Intereting Posts
Admin: Пользовательские запросы на возврат возвращаемых прав Безопасная проверка wp_editor в параметрах темы Параметры WordPress в Admin: сообщения для выпадающих меню the_content после того, как все короткие коды разобраны Изменить Постоянная ссылка только на новые сообщения Дайте администратору сайта возможность «пропустить подтверждение по электронной почте» при добавлении нового пользователя Многоязычный сайт с двумя доменами Область подкаталогов на субдомене multisite? Крючок на генераторе Добавление jQuery-зависимостей предотвращает загрузку / загрузку скрипта Перенаправление после сохранения формы; и все же используйте wp_die () Добавление настраиваемых полей в собственные настройки галереи wp Как добавить класс в <ul> и childs <li> виджета боковой панели – WordPress Отображать дочерние страницы на родительской странице? Изменение окна поиска виджета

Добавить текущий элемент меню CSS в специальный архив типа страницы в меню WordPress

Я много читал об этом, но не смог найти решение.

В основном я пытаюсь показать текущий пункт меню на динамической странице, созданной архивом типа пользовательского типа. Элемент управления по умолчанию не добавляет имена классов CSS текущего объекта. Я нашел решение здесь – http://bloggingsquared.com/blogging-tips/how-to-add-the-current-menu-item-css-class-to-a-custom-link-in-a- WordPress-меню /

Это выглядит так:

add_filter('nav_menu_css_class', 'AddCurrentMenuItemClass',1,2); function AddCurrentMenuItemClass($classes,$item) { $link = site_url().$_SERVER['REQUEST_URI']; if(strpos($link, $item->url) !== false) { $classes[] = 'current-menu-item'; } return $classes; } 

Проблема, с которой я столкнулась, заключается в том, что выделена главная страница (которая является элементом меню), а также страница, на которой я включен. Если я изменил оператор if:

  if ( $link == $item->url ) 

Затем в работах на этой странице, но не на подстраницах.

Не могли бы вы помочь мне разобраться? Я работаю над проектом клиента с правильным сроком …

Я на WP 3.4.2 с премиальным шаблоном WooThemes: Whitelight

Solutions Collecting From Web of "Добавить текущий элемент меню CSS в специальный архив типа страницы в меню WordPress"

Это то, что вы хотите сделать,

  add_filter( 'wp_get_nav_menu_items', 'cpt_archive_menu_filter', 10, 3 ); function cpt_archive_menu_filter( $items, $menu, $args ) { foreach ( $items as &$item ) { if ( $item->type != 'custom' ) continue; if ( get_query_var( 'post_type' ) == 'your-post-type' && $item->title == 'Title of Link' ) { $item->classes []= 'class-name-your-want'; } } return $items; } 

Несмотря на то, что выше будет работать, пользовательским ссылкам назначается класс current-menu-item поэтому это не обязательно, если я буду следовать за вами правильно.

У меня такая же проблема. Это то, что я делаю: измените параметр YourMenuItem на пункт меню.

 / * Добавить пользовательский класс в определенный пункт меню * /
 function my_class ($ classes, $ item) {
     if ($ item-> title == "YourMenuItem") {
         $ classes [] = 'current-page'; 
     }
     return $ classes;
 }
 add_filter ('nav_menu_css_class', 'my_class', 10, 2);