首页 > 解决方案 > 如何在 WordPress 中将自定义类添加到菜单项。下面是我的代码,它不起作用

问题描述

头文件.php

/*Render menu*/
<div class="main-nav">
   <?php wp_nav_menu( 
     array( 
     'theme_location' => 'header-menu',
     'container' => 'ul',
     'menu_class' => 'nav'
     ) 
   ); 
   ?>
</div>

函数.php

/*Register menu*/
function register_main_menu(){
 register_nav_menus(array(
    'Primary' => __('Header Menu'),
    'Footer' => __('Footer Menu')
 ));
}
add_action('after_setup_theme', 'register_main_menu');

/*Custom menu class*/
function add_class_to_li($classes, $item){
  $classes[] = "nav-item";
  return $classes;
}
add_filter('nav_menu_css_class','add_class_to_li', 10, 4);

这不会将“nav-item”类添加到“li”。有什么我需要更新的。

标签: wordpresswordpress-theming

解决方案


您的 theme_location 应该与您在 functions.php 文件中的位置完全相同。所以你的阅读器菜单将是:

/*Render menu*/
<div class="main-nav">
   <?php wp_nav_menu( 
     array( 
     'theme_location' => 'Primary',  //this will be Primary, not header-menu
     'container' => 'ul',
     'menu_class' => 'nav'
     ) 
   ); 
   ?>
</div>

推荐阅读