如何用函数为WordPress导航菜单的<li>项添加类?
给WordPress导航菜单的标签添加自定义类
你可以直接修改现有的wp_nav_menu_objects过滤函数,操作菜单对象的classes属性来实现——这个属性对应
修改后的完整代码如下:
add_filter('wp_nav_menu_objects', 'my_wp_nav_menu_objects', 10, 2); function my_wp_nav_menu_objects( $items, $args ) { // 遍历所有菜单项 foreach( $items as &$item ) { // 给<li>追加自定义类(替换成你需要的类名) $item->classes[] = 'custom-menu-item'; // 保留你原来的包裹标题的逻辑 $item->title = "<div class='test'>".$item->title."</div>"; } return $items; }
补充说明:
- 如果需要仅给特定菜单添加类,可以通过
$args参数判断,比如检查菜单的slug:if ( $args->menu_slug === 'main-navigation' ) { $item->classes[] = 'custom-menu-item'; } - 如果需要仅给特定菜单项添加类,可以通过
$item->ID或者$item->title做判断:if ( $item->title === '首页' ) { $item->classes[] = 'home-menu-item'; }
内容的提问来源于stack exchange,提问作者patricko
相关产品推荐
相关产品推荐

