Ниже приведен фильтр, который применяется для пользовательских типов сообщений «Портфолио» .. он удалил активный класс из меню «Блог» и выделил меню с ID 123, он отлично работает .. it выделите мое меню с идентификатором 123, которое является «Портфолио», но оно применимо только к основной основной навигации, я имею в виду, что у меня есть два разных меню, которые сделаны с пользовательским Walker_Nav_Menu, он не применяется к этому ...Применение фильтра nav_menu_css_class к пользовательскому классу Walker_Nav_Menu
поэтому, если я добавлю этот «walker» => new my_walker() в мой код, он не применит следующий фильтр, но в противном случае он отлично работает. Может кто-нибудь, пожалуйста, скажите мне, как я могу применить это к пользовательскому классу walker на в то же время? .. спасибо ..
function remove_parent_classes($class)
{
// check for current page classes, return false if they exist.
return ($class == 'current_page_item' || $class == 'current_page_parent' || $class == 'current_page_ancestor' || $class == 'current-menu-item') ? FALSE : TRUE;
}
function add_class_to_wp_nav_menu($classes)
{
switch (get_post_type())
{
case 'portfolio':
// we're viewing a custom post type, so remove the 'current_page_xxx and current-menu-item' from all menu items.
$classes = array_filter($classes, "remove_parent_classes");
// add the current page class to a specific menu item (replace ###).
if (in_array('menu-item-123', $classes))
{
$classes[] = 'current_page_parent';
}
break;
// add more cases if necessary and/or a default
}
return $classes;
}
add_filter('nav_menu_css_class', 'add_class_to_wp_nav_menu');
вы можете разместить 'start_el' метод код пользовательских ходунки? – d79
спасибо fd7 ... ниже мой код el .. – user1718343
его здесь .. can not post в моем ответе .. http://pastebin.com/Lb8x53T8 – user1718343