Всем привет.
Формирую меню (подгоняю разметку под предоставленную верстку). У элементов меню первого уровня фильтром убрал штатные и добавил свой класс:
add_filter( 'nav_menu_css_class', function ( $classes, $item, $args, $depth ) {
if ( $args->theme_location === 'header-blog' ) {
$classes = [ 'nav-item' ];
} else {
$classes = [];
}
return $classes;
}, 10, 4 );
Теперь задача несколько усложнилась и требуется пунктам меню верхнего уровня, у которых есть свои пункты добавить ещё один класс dropdown, то есть должно получиться:
<li class="nav-item dropdown">...</li>
.
Аналогичная ситуация с ссылками в меню, фильтром добавляю класс:
add_filter( 'nav_menu_link_attributes', function ( $atts, $item, $args, $depth ) {
if ( $args->theme_location === 'header-blog' ) {
$atts['class'] = 'nav-link';
}
return $atts;
}, 10, 4 );
И ссылкам, которые находятся в пунктах меню, у которых есть свои подпункты (прошу прощения за каламбур :) ) добавить класс "dropdown-toggle", то есть должно получиться:
<a class="nav-link dropdown-toggle">...</a>
.
Подскажите пожалуйста, как реализовать такую штуку?