В активного пункта меню в WordPress нет дополнительного класса?

Создал дополнительное меню ("Меню ресторана"), из ссылок на записи. В functions.php, зарегистрировал его:
register_nav_menus( array(
	    'menu-1' => esc_html__( 'Primary', 'matchpoint' ),
            'Меню ресторана'    => 'Главное меню ресторана',
		) );


В шаблоне вызвал:
<?php
wp_nav_menu( array(
     'menu'=>'Меню ресторана',
     'container'       => '',
     'menu_class'      => '',
     'menu_id'         => '',
 ) );
 ?>


Но WordPress, почему-то не хочет к активному пункту прописывать дополнительный класс. В чем может быть причина?

(загрузку записей на нужную страницу делал через ajax)
  • Вопрос задан
  • 1455 просмотров
Решения вопроса 2
stasnox1
@stasnox1
web developer
Смотри functions.php

Там должно быть что-то подобное

function display_element($element, &$children_elements, $max_depth, $depth = 0, $args, &$output) { // вывод элемента
		if ( $element->current ) $element->classes[] = 'active'; // если элемент активный надо добавить бутстрап класс для подсветки
		$element->is_dropdown = !empty( $children_elements[$element->ID] ); // если у элемента подменю
		if ( $element->is_dropdown ) { // если да
		    if ( $depth === 0 ) { // если li содержит субменю 1 уровня
		        $element->classes[] = 'dropdown'; // то добавим этот класс
		        if ($this->open_submenu_on_hover) $element->classes[] = 'show-on-hover'; // если нужно показывать субменю по хуверу
		    } elseif ( $depth === 1 ) { // если li содержит субменю 2 уровня
		        $element->classes[] = 'dropdown-submenu'; // то добавим этот класс, стандартный бутстрап не поддерживает подменю больше 2 уровня по этому эту ситуацию надо будет разрешать отдельно
		    }
		}
		parent::display_element($element, $children_elements, $max_depth, $depth, $args, $output); // вызываем стандартный метод родителя
	}
Ответ написан
Комментировать
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы