Thema Ort leer

Ich habe ein Problem. Ich habe ein WordPress-Theme, das zwei Navigationsmenüs unterstützt. Das primäre Menü zeigt alle Seiten an und das sekundäre Menü zeigt standardmäßig die Kategorien an. Wenn ich zu Aussehen-> Menü gehe, um die Einstellungen zu ändern, sagt es “Das aktuelle Thema unterstützt nicht nativ Menüs, aber Sie können das Widget” Benutzerdefiniertes Menü “verwenden, um alle Menüs, die Sie hier erstellen, zur Seitenleiste des Themas hinzuzufügen”. Könnte mir bitte jemand sagen, wie man das triggers?

Solutions Collecting From Web of "Thema Ort leer"

“Das aktuelle Thema unterstützt standardmäßig keine Menüs

Das ist Dein Problem. Ihr Theme implementiert nicht die corefunktion von WordPress für benutzerdefinierte Navigationsmenüs.

Das primäre Menü zeigt alle Seiten …

Ich wp_list_pages() davon aus, dass dies über einen Aufruf von wp_list_pages()

… und das sekundäre Menü zeigt standardmäßig die Kategorien an.

Ich wp_list_categories() davon aus, dass dies über einen Aufruf von wp_list_categories() .

Wie repariert man

Sie müssen Ihr Design ändern, um die function der benutzerdefinierten Navigationsmenüs zu berücksichtigen. Glücklicherweise ist das überhaupt nicht schwer. Es beinhaltet zwei Schritte:

  1. Registrieren von Motivpositionen für Ihre benutzerdefinierten Navigationsmenüs
  2. Ausgabe der benutzerdefinierten Navigationsmenüs in der Vorlage

Registrieren von Themenstandorten

Sie registrieren Theme Locations über register_nav_menus() .

Fügen Sie functions.php idealerweise innerhalb einer Setup-function hinzu:

 function wpse73875_setup_theme() { // Register nav menu Theme Locations register_nav_menus( array( 'primary' => 'Primary Menu', 'secondary' => 'Secondary Menu' ) ); } add_action( 'after_setup_theme', 'wpse73875_setup_theme' ); 

Ausgabe benutzerdefinierter Navigationsmenüs in der Vorlage

Sie müssen herausfinden, wo Ihr Theme wp_list_pages() und wp_list_categories() . Sie werden wahrscheinlich eine oder beide in header.php . Wir lassen beide Menüs auf ihre aktuelle Ausgabe (Seiten und Kategorien) wp_nav_menu() , indem wir den Aufruf von wp_nav_menu() innerhalb einer has_nav_menu() Bedingung has_nav_menu() .

Ersetzen Sie dies:

 wp_list_pages( /* there may or may not be args here */ ); 

… mit diesem:

 if ( has_nav_menu( 'primary' ) ) { wp_nav_menu( array( 'theme_location' => 'primary' ) ); } else { wp_list_pages( /* exactly as it was in the Theme previously */ ); } 

Und ersetzen Sie dies:

 wp_list_categories( /* there may or may not be args here */ ); 

…mit diesem:

 if ( has_nav_menu( 'secondary' ) ) { wp_nav_menu( array( 'theme_location' => 'secondary' ) ); } else { wp_list_categories( /* exactly as it was in the Theme previously */ ); } 

Möglicherweise müssen Sie mit den Argumenten wp_nav_menu() in jedem Fall an wp_nav_menu() werden. Weitere Informationen finden Sie im Codex-Eintrag.

Für genauere statementen

Um genauere statementen zum Konvertieren der Menüs eines bestimmten Themas zur Unterstützung von benutzerdefinierten Navigationsmenüs zu erhalten, müssen Sie Ihre Frage so aktualisieren , dass sie den genauen Code enthält , der wp_list_pages() und wp_list_categories() .