WordPress.org

Sprachen: Englisch • Menüs 日本語 Slovenčina • 中文(简体) • (Fügen Sie Ihre Sprache hinzu)

Das Navigationsmenü ist eine Themenfunktion, die mit Version 3.0 eingeführt wurde. WordPress enthält einen benutzerfreundlichen Mechanismus zum Einführen benutzerdefinierter Navigationsmenüs in ein Thema. Um die Menüunterstützung in Ihr Design zu integrieren, müssen Sie Ihren Designdateien einige Codesegmente hinzufügen.

Funktionsreferenz

  • register_nav_menus()
  • register_nav_menu()
  • register_nav_menu()

  • has_nav_menu()
  • wp_nav_menu()

Navigationsmenü registrieren Navigationsmenü anzeigen

Menüs registrieren

Zuerst in den Funktionen Ihres Themas.php, müssen Sie eine Funktion schreiben, um die Namen Ihrer Menüs zu registrieren. (So werden sie im Admin-Bildschirm Appearance -> Menus angezeigt.) Als Beispiel würde dieses Menü im Feld „Theme Locations“ als „Header Menu“ erscheinen.

function register_my_menu() { register_nav_menu('header-menu',__( 'Header Menu' ));}add_action( 'init', 'register_my_menu' );

Und dies würde zwei Menüoptionen erscheinen lassen, Header-Menü und Extra-Menü –

function register_my_menus() { register_nav_menus( array( 'header-menu' => __( 'Header Menu' ), 'extra-menu' => __( 'Extra Menu' ) ) );}add_action( 'init', 'register_my_menus' );

Menüs zum Thema anzeigen

Sobald Sie das getan haben, ist Ihr Thema fast fertig. Der letzte Vorbereitungsschritt besteht darin, dem Thema mitzuteilen, wo die Menüs angezeigt werden sollen. Sie tun dies in der entsprechenden Themendatei. So möchten wir zum Beispiel, dass sich unser Header-Menü im Header befindet.PHP. Öffnen Sie diese Datei im Themeneditor und entscheiden Sie, wo Sie Ihr Menü platzieren möchten. Der hier zu verwendende Code ist wp_nav_menu, den wir für jeden Menüpunkt einmal benötigen. Fügen Sie also diesen Code hinzu –

<?php wp_nav_menu( array( 'theme_location' => 'header-menu' ) ); ?>

Sie müssen lediglich sicherstellen, dass theme_location auf den Namen zeigt, den Sie für Ihr Menü in den Funktionen angegeben haben.PHP-Code oben. (Beachten Sie, dass hier eher das Header-Menü als das Header-Menü ohne Bindestrich verwendet wird. Header-Menü ist der Name, den der Code versteht, Header-Menü ist die für Menschen lesbare Version, die Sie auf der Admin-Seite sehen.)

Um den Code zu vervollständigen, können Sie Ihr zusätzliches Menü woanders platzieren. Vielleicht möchten Sie zum Beispiel ein Menü auf einer Ihrer Seiten, und vielleicht möchten Sie sogar, dass es mit einem enthaltenen DIV einer bestimmten Klasse ein wenig aufgepeppt wird –

wp_nav_menu( array( 'theme_location' => 'extra-menu', 'container_class' => 'my_extra_menu_class' ) );

Also würden Sie das Obige in Ihre Seitenvorlage einfügen, und das Menü würde nicht nur dort angezeigt, wo Sie es ablegen, sondern auch als my_extra_menu_class , damit Sie damit in CSS arbeiten können.

Menüs Panel

Das ist die ganze Hintergrundarbeit. Zum Abschluss besuchen Sie einfach das Appearance -> Menus Panel in Ihrem Site-Admin. Anstatt nun Text zu sehen, der darauf hindeutet, dass Ihr Thema Menüs nicht nativ unterstützt, werden einige Optionen für die Position des Themas angezeigt.

Sie können jetzt den GUI Menu Creator in diesem Admin-Panel verwenden, um Ihre Menüs zusammenzustellen. Geben Sie ihnen jeweils einen Namen und weisen Sie dann einem Speicherort mit den Pulldown-Optionen ein Menü zu.

(Sie sehen Ihre neuen Navigationsoptionen, wenn Sie ein neues Menü hinzufügen.)

Externe Ressourcen

  • Auf Wiedersehen, Kopfschmerzen. Hallo, Menüs! – Angemessenes Tutorial von Justin Tadlock, das mehr Details zu den verfügbaren Optionen enthält
  • WordPress Navigationsmenü Generator

Verwandt

Navigationsmenü

  • register_nav_menus()
  • register_nav_menu()
  • unregister_nav_menu()
  • has_nav_menu()
  • wp_nav_menu()
  • wp_get_nav_menu_items()

Thema Unterstützung: add_theme_support(), remove_theme_support(), current_theme_supports()
Thema Funktionen: sidebar, Menüs, Post-Formate, title-tag, custom-Hintergrund, custom-header, Custom-Logo, Post-Thumbnails, automatische-Feed-Links, html5, Editor-Stil, content_width

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.