我使用下面的自定义导航步行者输出自定义子菜单。我想包括家长的标题在步行者,但它只是显示空白。
class Custom_Walker_Nav_Menu extends Walker_Nav_Menu {
function start_lvl( &$output, $depth = 0, $args = array() ) {
$indent = str_repeat( "\t", $depth );
$parent_id = $this->db_fields['id'][ $depth - 1 ];
$parent_item = get_post( $parent_id );
$parent_title = $parent_item->post_title;
$output .= "\n$indent<p class=\"menu-title\">$parent_title</p>\n";
$output .= "\n$indent<ul class=\"sub-menu\">\n";
}
function end_lvl( &$output, $depth = 0, $args = array() ) {
$indent = str_repeat( "\t", $depth );
$output .= "$indent</ul>\n";
}
}
wp_nav_menu( array(
'theme_location' => 'primary',
'menu_class' => 'nav-menu',
'depth' => 2,
'container' => 'div',
'container_class' => '',
'container_id' => 'main-navigation',
'walker' => new Custom_Walker_Nav_Menup(),
) );
1条答案
按热度按时间voj3qocg1#
我决定使用jQuery在我需要的地方包含父标题。当用户将鼠标悬停在菜单项上时,我使用jQuery将文本复制到目标元素。