我可以添加分隔符吗<;李>;在Wordpress wp_nav_menu()中的锚定标记之后?
我需要在锚点标记后添加分隔符,如下所示:我可以添加分隔符吗<;李>;在Wordpress wp_nav_menu()中的锚定标记之后?,wordpress,Wordpress,我需要在锚点标记后添加分隔符,如下所示: <li id="menu-item-27" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-27"><a href="services">Services</a></li> <li class="separator>//</li> <li id="menu-item-28"
<li id="menu-item-27" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-27"><a href="services">Services</a></li>
<li class="separator>//</li>
<li id="menu-item-28" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-27"><a href="gallery">Gallery</a></li>
<li class="separator>//</li>
//
是的,有两种不同的方法,但是下面的$arg将有所帮助
美元之前
(字符串)(可选)链接前的输出文本
Default: None
美元之后
(字符串)(可选)链接结束后的输出文本
Default: None
$link_之前
(字符串)(可选)在链接文本之前输出文本
Default: None
Default: None
$link_之后
(字符串)(可选)链接文本后的输出文本
Default: None
Default: None
试一试
$args=array('after'=>'/ ');
wp_导航菜单($args);
这是一个古老的问题,但我偶然发现了同样的问题,并用一个定制的助行器解决了它
首先,walker在顶层的每个
之后添加一个分隔符:
class Main_Menu_Walker extends Walker_Nav_Menu{
function end_el( &$output, $item, $depth = 0, $args = array() ) {
$output .= "</li>\n";
if ($depth == 0)
$output .="<li class='separator'>|</li>\n";
}
}
现在,您必须使用walker作为wp\u nav\u菜单的参数
:
wp_nav_menu(array(
'theme_location' => 'navigation',
'container' => false,
'menu_class' => 'inline',
'walker' => new main_menu_walker()
)
);
但是我不需要链接这个//,我需要这个分隔符是一个单独的li标记好的,我已经编辑它来做这个。如果您需要删除最后一个类,我会在元素中添加一个类,并使用CSS的最后一个子伪类。。。带有.submenu的Div将添加到LI的外部,这将导致菜单的子菜单部分功能不好。可以通过扩展默认的“Walker\u Nav\u menu”wp函数来解决此问题,在每个LI之前添加.sep类,如果需要,第一个.sep类也可以通过jQuery拥有.first类,sep将被删除,需要在wordpress菜单的参数中调用description_walker()。如果需要,我可以在回答中写下详细的解释,只需打开问题并链接到它,然后邀请我回答。谢谢