Gibt es eine Möglichkeit, die benutzerdefinierten Menüelemente bei der Installation des ersten Themas fest zu codieren? Ich erstelle ein Thema, das bei der Installation automatisch einige allgemeine Seiten erstellt. Ich muss also wissen, ob ich sie auch zum benutzerdefinierten Wordpress-Menü hinzufügen kann, damit der Client sie nicht manuell hinzufügen muss.
Mit anderen Worten: Wie kann ein benutzerdefiniertes Menüelement programmgesteuert eingefügt / erstellt werden?
Lassen Sie mich wissen, wenn etwas unklar ist. Leitfaden zur entsprechenden Codex-Seite ist willkommen. Vielen Dank!
Update: Code von hier aus ausprobiert. Spezifisches Menü mit wp_nav_menu_items anvisieren
Menü Registrierung:
function register_my_menus() {
register_nav_menus(
array('main-menu' => __( 'Main Menu' ) )
);
}
add_action( 'init', 'register_my_menus' );
Vorlage verwenden:
<?php wp_nav_menu( array( 'theme_location' => 'main-menu' ) ); ?>
Code zum Hinzufügen neuer Elemente:
function new_nav_menu_items($items) {
if( $args->theme_location == 'main-menu' ){
$homelink = '<li class="home"><a href="' . home_url( '/' ) . '">' . __('Home') . '</a></li>';
$items = $homelink . $items;
return $items;
}
}
add_filter( 'wp_nav_menu_items', 'new_nav_menu_items', 10, 2 );
Beim Hinzufügen des Codes zum Hinzufügen neuer Elemente zum functions.php
Navigationsmenü in der Datei geschieht auf der Menüseite im Admin-Bereich nichts, aber die aktuellen Menüelemente werden nicht mehr angezeigt.