Add custom text to menu

时间:2017-04-04 作者:Serg

如何将自定义文本添加到菜单?我希望输出中有这样的结构:

<ul>
    <li>home</li>
    <li>services
        <ul>
             <p>services</p>
             <li><a href="#">service1</a></li>
             <li><a href="#">service2</a></li>
             <li><a href="#">service3</a>
                 <ul>
                     <p>service3<p>
                     <li><a href="#">service 3.1</a></li>
                 <ul>
             </li>
        </ul>
    </li>
</ul>
谢谢!

3 个回复
SO网友:Ray

使用CSS3还有另一种方法可以做到这一点。您可以添加一个指向WP菜单的链接作为常规,但要使位置javascript:void(0);# 所以它不会去任何地方(我会说javascript... 是防止锚链着火的更好方法)。

然后是你的风格。css或css文档您可以通过href 喜欢

header .nav li a[href="#"], header .nav li a[href="#"]:hover,
header .nav li a[href="javascript:void(0);"],
header .nav li a[href="javascript:void(0);"]:hover {
    text-decoration:none !important;
    cursor: text !important
}
参考号:https://css-tricks.com/almanac/selectors/a/attribute/

您的选择器可能不同

SO网友:Abhishek Pandey

您可以通过后端外观>菜单添加它,并通过将页面或帖子拖动到菜单中并在您想调用的地方调用它来创建菜单和>子菜单。

有关更多详细信息,请参阅此链接How to Add More Navigation Menus to your WordPress

或者可以使用衰减代码将特定元素添加到菜单中

add_filter( \'wp_nav_menu_items\', \'your_custom_menu_item\', 10, 2 );
function your_custom_menu_item ( $items, $args ) {
    if (is_single() && $args->theme_location == \'primary\') {
        $items .= \'<li><p>Show whatever</p><li>\';
    }
    return $items;
}

SO网友:LJJ

为此,您必须在WordPress菜单中添加walker类,

https://codex.wordpress.org/Class_Reference/Walker

以及wp\\U nav\\U菜单功能中的所有walker类

<?php
    wp_nav_menu(array(
        \'menu\'    => 2, //menu id
        \'walker\'  => new Walker_Quickstart_Menu() //use our custom walker
    ));
    ?>