Vertrauenswürdige WordPress-Tutorials, wenn Sie sie am dringendsten benötigen.
Anfängerleitfaden für WordPress
WPB Cup
25 Millionen+
Websites, die unsere Plugins verwenden
16+
Jahre WordPress-Erfahrung
3000+
WordPress-Tutorials von Experten

Suchbegriff und Ergebnisanzahl in WordPress anzeigen

In diesem Tutorial teilen wir Ihnen mit, wie Sie Ihrer Suchseite eine einfache Funktion hinzufügen können, die den Suchbegriff und die Anzahl der Ergebnisse anzeigt. Dieses Feature war eine spezielle Anfrage eines unserer Benutzer per E-Mail. Wenn Sie möchten, dass wir ein Thema behandeln, können Sie gerne einen Vorschlag machen.

Suchbegriff und Ergebnisanzahl in der WordPress-Suche anzeigen

Öffnen Sie Ihre Datei search.php in Ihrem Theme und fügen Sie den folgenden Code hinzu:

<h2 class="pagetitle">Search Result for <?php /* Search Count */ $allsearch = new WP_Query("s=$s&showposts=-1"); $key = wp_specialchars($s, 1); $count = $allsearch->post_count; _e(''); _e('<span class="search-terms">'); echo $key; _e('</span>'); _e(' &mdash; '); echo $count . ' '; _e('articles'); wp_reset_query(); ?></h2>

Der obige Code wird etwa so angezeigt:

Suchergebnis für Twitter — 15 Artikel

Sie können den Suchbegriff auch hervorheben, indem Sie Ihrer Theme-Stylesheet-Datei die CSS-Klasse .search-terms hinzufügen. Hier ist ein einfaches CSS, mit dem Sie beginnen können:

.search-terms {
background-color:yellow;
color:blue;
}

Dies ist nur eines der coolen Dinge, die Sie für Ihre Suchseite tun können, wenn Sie sie anpassen. Sie können auch Suchbegriffe in den Ergebnissen hervorheben und sogar eine Funktion Suche nach Kategorie zu Ihrer WordPress-Suche hinzufügen.

Quelle: Michael Martin

Offenlegung: Unsere Inhalte werden von unseren Lesern unterstützt. Das bedeutet, wenn Sie auf einige unserer Links klicken, können wir eine Provision verdienen. Sehen Sie wie WPBeginner finanziert wird, warum das wichtig ist und wie Sie uns unterstützen können. Hier ist unser Redaktionsprozess.

Das ultimative WordPress-Toolkit

Erhalten Sie KOSTENLOSEN Zugang zu unserem Toolkit – eine Sammlung von WordPress-bezogenen Produkten und Ressourcen, die jeder Profi haben sollte!

Leserinteraktionen

15 CommentsLeave a Reply

  1. Kann ich diesen Code in der Datei sidebar.php verwenden? Da ich den Suchbegriff und die Ergebnisanzahl in der Seitenleiste anzeigen muss. Bitte helfen Sie.

  2. thanks a lot for this snippet! :)

    Laut dem WP Codex ist die Funktion wp_specialchars veraltet. Es heißt, Sie sollten stattdessen esc_html verwenden.

    mit freundlichen Grüßen,
    marco

    • Nächstes Mal schaue ich mir die Kommentare genau an. CHADHAYTON hat bereits einen Link gepostet, wie Sie damit umgehen können.

  3. echo $wp_query->found_posts;
     
    Wenn Sie dies am Anfang Ihrer Suchseite hinzufügen, wird die Anzahl der Beiträge angezeigt, die für eine bestimmte Suche gefunden wurden.
     
    echo get_search_query();
     
    Dies zeigt den Suchbegriff an (der von Ihrem Website-Besucher in das Suchfeld eingegeben wurde).
     
    timer_stop(1);
     
    Dies zeigt die Zeit an, die für die Ausführung der Suche benötigt wurde.
     
    Zusammen könnten Sie etwas wie das Folgende ausgeben:
     
    Ihre Suche nach „Kaffeebohnen“ ergab „16“ Beiträge in „0,87“ Sekunden.

  4. Wow. Es ist viel einfacher als das, die Suchergebnisse von WordPress zu zählen, hier:

        global $wp_query;
        $count = sizeof( $wp_query->posts );
        echo"<pre>";
        //var_dump($wp_query);// The WP Query Object
        var_dump($wp_query->posts); // The WP Query Object's 'posts' property (note the plural)
        echo"</pre>";
    

    Wenn Sie diesen Ausschnitt in Ihre Suchvorlage einfügen, gibt er die Eigenschaften der Variablen '$wp_query' aus, insbesondere die Eigenschaft 'posts' des Objekts. Dies ist ein Array, das eine Sammlung der von der Suchanfrage zurückgegebenen Beiträge speichert, mit denen Sie verschiedene Dinge tun können, sobald Sie darauf zugreifen, einschließlich (*Trommelwirbel*), *zählen* der Anzahl der Beiträge in diesem Array mit der PHP-Funktion 'count()' oder 'sizeof()'.

    • Ihr Code ist ein wenig abgeschnitten. Gibt es eine Möglichkeit, dass Sie uns den Ausschnitt per E-Mail senden können, damit wir ihn ausprobieren und darüber schreiben können? Selbstverständlich wird Ihnen die volle Anerkennung zuteil.

      Admin

    • Chris,

      Das funktioniert nicht. Es geht darum, die Gesamtzahl der Ergebnisse zu ermitteln, die mit der Abfrage übereinstimmen – nicht die Anzahl der aktuell abgerufenen. Wenn es mehr Ergebnisse gibt, als auf eine Seite "passen", erhält Ihr Code nur die Anzahl der Elemente auf einer Seite.

  5. Suchergebnisse sind eine persönliche Sache für einen Benutzer, daher ist es gut, wenn ihm viele Informationen zur Verfügung gestellt werden.

    • Dieser Code ist korrekt. Er funktioniert, das einzige Problem, auf das er hinweist, ist, dass es auch anders gemacht werden kann. Wir haben diesen Code auf der Website eines Kunden verwendet und er funktioniert.

      Admin

  6. Gute Idee. Schlechte Ausführung.
    Warum zum Teufel sollte man ein span-Tag übersetzen wollen???
    Und mein Favorit: _e(''); Hä??
    Warum sollte man dieselbe Suche zweimal abfragen?
    Ergibt überhaupt keinen Sinn.

    Aber ich will nicht haten, so sollte es gemacht werden (meiner bescheidenen Meinung nach):


    post_count); ?>

Kommentar hinterlassen

Vielen Dank, dass Sie einen Kommentar hinterlassen. Bitte beachten Sie, dass alle Kommentare gemäß unserer Kommentarrichtlinie moderiert werden und Ihre E-Mail-Adresse NICHT veröffentlicht wird. Bitte verwenden Sie KEINE Schlüsselwörter im Namensfeld. Führen wir ein persönliches und bedeutungsvolles Gespräch.