it-swarm.asia

Özel menüler için temama nasıl destek eklerim?

Benim sürüm 3.0 sürümünde eklenen özel menülerin işlevselliğini benim tema için eklemek nasıl birkaç ders okudum ama hepsi biraz farklı görünüyor ve gereksiz kod içerip içermediğinden emin değilim. Ek olarak, temanızı menü uyumlu olarak kaydetme kodunun RC ile genel sürüm arasında değiştiğini okudum.

Temama özel menüler için destek eklemenin en basit yolu nedir?

6
nobody

En kolay yol, register_nav_menus işlevini kullanmaktır. Bu, 'after_setup_theme' içine bağlanmalıdır:

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

add_action( 'after_setup_theme', 'my_cool_menu_function' );

Ardından, temanızda bu menünün konumunu arayın:

wp_nav_menu( array( 'theme_location' => 'primary' ) );
9
John P Bloch

Bunu temanınfunctions.phpdizinine ekle. Eğer bir tane yoksa, oluşturun .:

<?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' );
?>

Ve bu herhangi bir yere gidebilir,header.php(bkz. wp_nav_menu () docs):

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

Özel gezinmeyi en basit biçimine nasıl dahil edeceğimi, belirleyiciyi değil gezinmeyi seçtiğini düşünüyorum:

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

Ayrıca, işleve geçirilebilecek temel seçenekler de var, işte genelde kullandığım:

$navArgs=array(
    'menu_id' => 'nav',    // target the nav menu
    'container' => '',     // don't wrap the menu in <ul>
);
0
Ben Everard