상현
개발 덕후

wp_nav_menu()로 만드는 메뉴에서 li에 클래스 추가하는 방법

( 업데이트: )

🤔 무엇을

<li class="my_class">
  <a href="">Link</a>
</li>Code language: HTML, XML (xml)

🔑 해결

커스텀 워커를 만들 필요없이 추가 인수를 사용하고 nav_menu_css_class에 대한 필터를 설정하면 된다.

function add_additional_class_on_li($classes, $item, $args) {
     if(isset($args->add_li_class)) {
         $classes[] = $args->add_li_class;
     }
     return $classes;
 }
 add_filter('nav_menu_css_class', 'add_additional_class_on_li', 1, 3);Code language: PHP (php)

use case

$args = array(
     'container'     => '',
     'theme_location'=> 'your-theme-loc',
     'depth'         => 1,
     'fallback_cb'   => false,
     'add_li_class'  => 'your-class-name1 your-class-name-2'
     );
 wp_nav_menu($args);Code language: PHP (php)