题
我已经阅读了一些有关如何添加3.0版的自定义菜单功能的教程,但它们似乎都有所不同,我不确定它们是否包含多余的代码。此外,我读到,随着菜单兼容的RC和公共版本更改,代码注册了您的主题。
为我的主题添加对自定义菜单的支持的最简单方法是什么?
解决方案
最简单的方法是使用 register_nav_menus
函数。 'after_setup_theme'
:
function my_cool_menu_function(){
register_nav_menus( array(
'primary' => 'Primary Navigation'
));
}
add_action( 'after_setup_theme', 'my_cool_menu_function' );
然后,在您的主题中,只需调用该菜单的位置:
wp_nav_menu( array( 'theme_location' => 'primary' ) );
其他提示
添加到 functions.php
你的主题。如果您没有一个,请创建它。
<?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' );
?>
这可以去任何地方,我有 header.php
(看 wp_nav_menu
() 文档):
<?php
$args = array(
'menu' => 'Main Menu',
'sort_column' => 'menu_order',
'container' => 'div',
);
wp_nav_menu( $args ); ?>
这如何以最简单的形式包括自定义导航,我相信它可以使用“非标识符”进行导航:
<div class="access">
<?php wp_nav_menu(); ?>
</div>
还有一些基本选项可以传递给该功能,这是我通常使用的:
$navArgs=array(
'menu_id' => 'nav', // target the nav menu
'container' => '', // don't wrap the menu in <ul>
);