Добавить имя класса в текущий пункт меню для дочерних страниц родительского элемента в меню для WordPress
Я использую следующий код, чтобы напечатать меню дочерних страниц родителя в меню ul li. это прекрасно работает однако у меня нет возможности передавать имя класса только для текущей страницы, на которой находится пользователь - та же концепция WordPress использует для кода главного меню - мне любопытно, что мне нужно изменить в этом коде для передачи в текущий пункт меню имя_класс?
function nee_list_child_pages() {
global $post;
$string = '';
if ( is_page() && $post->post_parent )
$childpages = wp_list_pages( 'sort_column=menu_order&title_li=&child_of=' . $post->post_parent . '&echo=0' );
else
$childpages = wp_list_pages( 'sort_column=menu_order&title_li=&child_of=' . $post->ID . '&echo=0' );
if ( $childpages ) {
$string = '<div id="sidebar_menu"><ul>' . $childpages . '</ul></div>';
return $string;
}
}
add_shortcode('wpb_childpages', 'nee_list_child_pages');
1 ответ
Вы должны создать NavWalker для этого. Вот пример имплантации: https://gist.github.com/kosinix/5544535
и документы для офиса: https://codex.wordpress.org/Class_Reference/Walker_Nav_Menu