So verwenden Sie mehrere Suchformulare in WordPress

So verwenden Sie mehrere Suchformulare in WordPress / Tutorials

Kürzlich haben wir Ihnen gezeigt, wie Sie Suchergebnisse für bestimmte Beitragstypen in WordPress einschränken können. Jetzt zeigen wir Ihnen, wie Sie verschiedene / mehrere Suchformulare erstellen können. Auf diese Weise kann jedes Formular auf die Suche nach einem bestimmten Beitragstyp beschränkt werden. Obwohl dies nicht sehr schwer ist, müssen Sie sich mit WordPress-Vorlagen auskennen.

Zunächst benötigen Sie einige Suchformulare. Platzieren Sie den folgenden Code an einer beliebigen Stelle in Ihrem Blog:

 

Um festzulegen, welche Art von Suche dieses Formular durchführt, ändern Sie einfach den Wert des ausgeblendeten Felds. Im Moment ist es auf "normal" eingestellt, aber es kann alles sein, was Sie wollen. Als Nächstes müssen wir die Datei search.php ändern. Öffnen Sie es und ersetzen Sie alles darin durch diesen Code (kopieren Sie den vorhandenen Code zuerst in Ihre Zwischenablage, Sie werden ihn in einer Minute benötigen):

  

Wir gehen also davon aus, dass Sie zwei Suchmasken haben: Normal und Bücher. Dieser Code leitet die Suche einfach auf die PHP-Datei um, die diese spezifische Abfrage verarbeitet. Jetzt müssen wir nur noch diese Dateien erstellen. Also, fahren Sie fort und erstellen Sie eine Datei "normal-search.php" und "books-search.php" (ersetzen Sie einfach "normal" und "books" mit den von Ihnen verwendeten Werten).

Nun in normal-search.php kopieren und folgenden Code einfügen:

 $ args = array ('post_type' => 'post'); $ args = array_merge ($ args, $ wp_query-> query); query_posts ($ args); 

Unmittelbar danach fügen Sie den Schleifencode aus Ihrer Zwischenablage ein, den Sie aus der Datei search.php kopiert haben. Zusammen durchsucht dieser Code nur Ihre normalen Blogbeiträge. Fügen Sie nun in der Datei books-search.php dieses Bit Code hinzu und fügen Sie die Schleife direkt danach ein:

 $ args = array ('post_type' => 'books'); $ args = array_merge ($ args, $ wp_query-> query); query_posts ($ args); 

Dies führt dazu, dass WordPress nur nach dem benutzerdefinierten Post-Typ von "Büchern" sucht. Sie können diesen Vorgang für beliebig viele Suchformulare wiederholen.