zwei Suchformulare auf derselben Seite

Ich habe ein mobiles und ein großes Suchfeld. Ich versuche, diese beiden auf der gleichen Seite zu laden. Ich verwende JointsWP Starter Theme.

Hier sind die functionen:

function joints_wpsearch($form) { $form = ''; return $form; } function custom_search( $form ) { $form = '
'; return $form; }

Hier sind meine Haken:

 add_filter( 'get_search_form', 'joints_wpsearch' ); add_filter( 'get_search_form', 'custom_search' ); 

Hier ist, was ich in die HTML-Datei einfüge, um sie aufzurufen:

   

Aber es lädt das custom_search-Formular für beide. Was mache ich falsch. Ist das etwas, was ich überhaupt tun kann? Ich lerne immer noch WordPress, aber ich dachte, das ist etwas, was ich tun kann.

Solutions Collecting From Web of "zwei Suchformulare auf derselben Seite"

Die function get_search_form funktioniert nicht so. Der akzeptierte Parameter gibt nur an, ob der HTML Inhalt direkt zurückgegeben oder ausgegeben wird. Also sollte dieser Parameter ein boolescher Wert sein. Es funktioniert immer noch in Ihrem Fall, weil PHP einfach die Zeichenfolge, die Sie übergeben, als wahr bewertet, da es keine leere Zeichenfolge ist, 0, null usw. Es würde immer noch funktionieren, wenn Sie ‘null’ als Zeichenfolge übergeben und nicht null Stichwort 🙂

Falls Sie nicht bereit sind, Ihre eigene grundlegende get_search_form Implementierung zu schreiben (was überhaupt nicht schwierig ist, wenn Sie in den Quellcode schauen – macht die locate_template function die ganze Magie, also übergeben Sie einfach eine Variable an Ihre function mit dem Vorlagennamen und verwenden Sie diese Wenn Sie die locate_template function aufrufen, können Sie eine globale Variable get_search_form bevor Sie get_search_form mit dem get_search_form HTML- get_search_form aufrufen.

Wenn Sie dann den get_search_form Filter verwenden, überprüfen Sie einfach, auf was diese globale Variable eingestellt wurde, und geben Sie den entsprechenden HTML Inhalt zurück. Intern verwendet WordPress eine Menge globaler Variablen, so dass Sie einfach der kaputten, schlechten Praxis folgen würden, dass es bereits vorhanden ist (ich nehme an, dass Sie Schwierigkeiten haben, globale Variablen zu verwenden).