我在wordpress中有这个菜单,我的问题是 - 我希望当我点击像议程页面这样的页面时,议程菜单将是class =“currentpage”。我对主动菜单中的wordpress并不熟悉。我在functions.php中添加了一个代码,这是我的代码 -
add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);
function special_nav_class ($classes, $item) {
if (in_array('current-menu-item', $classes) ){
$classes[] = 'currentpage';
}
return $classes;
}
这是我的html菜单 -
<li><a href="<?php bloginfo('url')?>/about/" class=""><span>about</span></a></li>
<li><a href="<?php bloginfo('url')?>/agenda/" class=""><span>agenda</span></a></li>
<li><a href="<?php bloginfo('url')?>/past-conferences/" class=""><span>past conferences</span></a></li>
我希望将其插入class =“currentpage” 我怎么能在这件事上工作? 任何帮助都非常感谢TIA。
答案 0 :(得分:0)
如果您希望此功能正常工作,则需要通过Wordpress手动添加菜单。
首先,在主题functions.php文件中注册nav menu
:
Function Reference/register nav menu
示例:
<?php
add_action( 'after_setup_theme', 'register_my_menu' );
function register_my_menu() {
register_nav_menu( 'primary-menu', __( 'Primary Menu', 'theme-slug' ) );
}
?>
然后通过Wordpress(外观&gt;菜单)添加菜单。
之后用wp_nav_menu()函数替换html菜单以显示自定义菜单。
示例:
<?php wp_nav_menu( array( 'theme_location' => 'primary-menu' ) ); ?>
只有在此之后,您的功能才能按预期工作。