2014-12-11 4 views
2

Я использую следующее переопределение в моей functions.phpOverride меню CSS Wordpress с functions.php

function wp_nav_menu_attributes_filter($var) { 
return is_array($var) ? array_intersect($var, array('current-menu-item')) : ''; 
} 

add_filter('nav_menu_css_class', 'wp_nav_menu_attributes_filter', 100, 1); 
add_filter('nav_menu_item_id', 'wp_nav_menu_attributes_filter', 100, 1); 
add_filter('page_css_class', 'wp_nav_menu_attributes_filter', 100, 1); 

Это удаляет класс тег, который WordPress добавляет к пункту меню. Теперь то, что мне нужно сделать, фактически помещено в мое собственное имя класса в тег li, может ли кто-нибудь быстро заполнить меня, как это сделать, я просмотрел google и, возможно, я искал это неправильно или что нет, или я просто не может понять систему крюк с файлом functions.php ....

Использование выше сделать мой HTML вывод как ...

<ul id="menu-homemenu" class="list-group special"> 
    <li><a href="#">Biography</a></li> 
    <li><a href="#">Selected Works</a></li> 
    <li><a href="#">Contact Us</a></li> 
    </ul> 
+0

Это для моего меню вызывается только меню homemenu, у меня есть еще один на той же странице (используется для наложения), что я не хочу добавлять css в те теги LI. В настоящее время я смог сделать это с помощью этого кода, но он выполняет оба меню: http://mattvarone.com/wordpress/cleaner-output-for-wp_nav_menu/ – whreed

ответ

0

конечно после того, как я отправил комментарий, я понял это .. .sigh ненависть, когда это занимает весь вечер, чтобы получить его ... этот вопрос указал мне в правильном направлении - How to add custom HTML to wp_nav_menu?

Я добавил этот класс ..

class Custom_Walker_Nav_Menu extends Walker_Nav_Menu { 
    function start_el(&$output, $item, $depth = 0, $args = array(), $id = 0) { 
     $output .= "<li class='list-group-item'><a href=".esc_attr($item->url).">".esc_attr($item->title)."</a>"; 
    } 

    function end_el(&$output, $item, $depth = 0, $args = array()) { 
     $output .= "</li>\n"; 
    } 
} 

Затем добавили это мой массив, где я назвал свою СЧА в моем шаблоне ...

<?php wp_nav_menu(array('menu' => 'HomeMenu','menu_class' => 'list-group special','menu_id' => '','walker' => new Custom_Walker_Nav_Menu)); ?> 
Смежные вопросы