Frage

Ich habe ein paar Tutorials gelesen, wie Sie die Funktionalität der in Version 3.0 hinzugefügten benutzerdefinierten Menüs hinzufügen können, aber sie scheinen sich alle etwas zu unterscheiden, und ich bin mir nicht sicher, ob sie überflüssigen Code enthalten. Außerdem habe ich gelesen, dass sich der Code zum Registrieren Ihres Themas als Menükompatible zwischen dem RC und der Veröffentlichung geändert hat.

Was ist die einfachste Möglichkeit, meinem Thema benutzerdefinierte Menüs zu unterstützen?

War es hilfreich?

Lösung

Der einfachste Weg ist, die zu verwenden register_nav_menus Funktion. Dies sollte angeschlossen sein in 'after_setup_theme':

function my_cool_menu_function(){
  register_nav_menus( array(
    'primary' => 'Primary Navigation'
  ));
}

add_action( 'after_setup_theme', 'my_cool_menu_function' );

Rufen Sie dann in Ihrem Thema einfach die Position dieses Menüs an:

wp_nav_menu( array( 'theme_location' => 'primary' ) );

Andere Tipps

Fügen Sie das hinzu functions.php von deinem Thema. Wenn Sie keine haben, erstellen Sie ihn .:

<?php
add_theme_support('menus');
function register_my_menus() {
    $args = array( 
        'menu-1' => __( 'Main Menu' )
    );
    register_nav_menus( $args );
}
add_action( 'init', 'register_my_menus' );
?>

Und das kann überall hin gehen, ich habe es in header.php (sehen wp_nav_menu() Dokumente):

<?php
$args = array(
    'menu' => 'Main Menu',
    'sort_column' => 'menu_order',
    'container' => 'div',
);
wp_nav_menu( $args ); ?>

Ich glaube, dass die benutzerdefinierte Navigation in der einfachsten Form die Navigation mit Nicht -Kennung aufnimmt:

<div class="access">
  <?php wp_nav_menu(); ?>
</div>

Es gibt auch grundlegende Optionen, die an die Funktion übergeben werden können. Folgendes verwende ich im Allgemeinen:

$navArgs=array(
    'menu_id' => 'nav',    // target the nav menu
    'container' => '',     // don't wrap the menu in <ul>
);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit wordpress.stackexchange
scroll top