我可以使用以下命令将新菜单项放到根级菜单项的末尾:
function bv_show_book_online_menu_item($items, $args) {
if(bv_can_book_online()) {
if($args->theme_location == 'main-menu') {
$items .= '<li><a href="/book/">Book Online</a></li>';
}
}
return $items;
}
add_filter('wp_nav_menu_items','bv_show_book_online_menu_item', 10, 2);
但是我怎样才能在任何我想要的地方插入物品?我实际上想把它放在子菜单的中间,如下所示:
Menu Item
Submenu Item
Submenu Item
<-- Insert new submenu item -->
Submenu Item
Submenu Item
Menu Item
Submenu Item
Submenu Item
Submenu Item
etc
答案 0 :(得分:1)
快速而肮脏的解决方案:
安装menu items visibility control plugin;这允许您通过菜单页面有条件地显示菜单和子菜单项。
添加您自己的&#34; my_function&#34;功能到functions.php或你自己的网站功能插件。当要显示子菜单时,插件应该返回TRUE。
在WP Dashboard菜单页面上,选择可选的子菜单,并将此条件function_exists("my_function") && my_function()
添加到其可见性字段中。简单地说:如果找不到my_function
,请不要摔倒,只有在my_function
返回TRUE时才会显示此子菜单。
我认为这个插件必须在可见性字段中评估条件。从理论上讲,这是一个轻微的安全风险。但是,当我检查插件时,许多支持&amp;评论(几个月前)我无法发现任何提出这一点作为关注点。
如果您对此感到担忧;那么或者您可以从插件源中找到所需的代码。