@asadov11

Как добавить классы к menu на Wordpress?

Есть Menu на WordPress
имеет класс .menu
подрубаю меню через wp таким образом
<?php wp_nav_menu( array(
					'theme_location'  => '',
					'menu'            => '',
					'container'       => 'ul',
					'container_class' => 'menu',
					'container_id'    => '',
					'menu_class'      => 'menu',
					'menu_id'         => '',
					'echo'            => true,
					'fallback_cb'     => 'wp_page_menu',
					'before'          => '',
					'after'           => '',
					'link_before'     => '',
					'link_after'      => '',
					'items_wrap'      => '<ul id = "%1$s" class = "%2$s">%3$s</ul>',
					'depth'           => 0,
					'walker'          => '',
				) ); ?>

, но так как элементы внутри меню тоже имеют классы, то они не стлизизуются
Как добавить классы к элементам внутри меню?
Вообще не понимаю, почему разработчики WP не добавили этот пункт в массив
  • Вопрос задан
  • 160 просмотров
Пригласить эксперта
Ответы на вопрос 2
@azerphoenix
Здравствуйте.
Для этого вам необходимо создать Walker.
Если у вас бутстрап тема, то готовый walker здесь - https://github.com/wp-bootstrap/wp-bootstrap-navwalker

Если вы хотите получить чистый walker, а затем его стилизовать, то https://gist.github.com/thefuxia/1053467

Создайте рнр файл, добавьте код выше, сделайте include через functions.php
Стилизуйте под себя. И не забудьте в выводимом меню указать walker (обратите внимание на последнюю строку вашего кода, где нужно указать walker)
Ответ написан
@freeman0204
, но так как элементы внутри меню тоже имеют классы, то они не стлизизуются
Как добавить классы к элементам внутри меню?

В чем проблема стилизовать их по селектору? Типа .menu li {} если нужно другой класс к ul добавить, можно дописать сюда 'menu_class' => 'new_class menu',
хотите через jquery добавьте класс к li $('.menu li').addClass('child');например. У каждого элемента меню есть уже свои классы и id и выборку можно как угодно сделать. В чем проблема?

И зачем выводить все параметры, можно и так
<?php wp_nav_menu( array(
          'theme_location'  => '',
          'menu_class'      => 'menu',
        ) ); ?>

что бы указать локацию и доп. класс если нужно.
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы
19 авг. 2018, в 00:49
600 руб./в час
18 авг. 2018, в 17:54
6000 руб./за проект
18 авг. 2018, в 16:00
60000 руб./за проект