如何在Wordpress中的某个位置添加自定义菜单

时间:2015-08-25 12:10:42

标签: wordpress menuitem

我想在我的主菜单中添加自定义菜单,我已经使用了以下代码,

add_filter( 'wp_nav_menu_items', 'search_menu_item', 10, 2 );
function search_menu_item ( $items, $args ) {
if ($args->theme_location == 'secondary-menu') {
$items .= '<li class="border-none">SEARCH<form><input type="text" name="s" placeholder="Search Here" class="search-box"></form>';
}
return $items;
}

菜单显示为最后一个菜单,但我想将菜单添加到第3个位置。我该怎么做

任何人都可以帮忙吗?

由于

2 个答案:

答案 0 :(得分:9)

您应该使用 wp_nav_menu_objects 过滤器,它允许您修改项目数组而不是字符串。

示例:

{{1}}

答案 1 :(得分:2)

以下是在WordPress中添加自定义菜单的步骤

  1. 首先,转到您的admin->外观->菜单。
  2. 通过单击图像上的“ +”号来创建新菜单。
  3. 添加新菜单时,可以在左侧的“主导航”中看到添加的菜单。现在,您可以从“自定义链接”,“页面”和“类别”中添加菜单项。
  4. 添加菜单项时,您可以在右侧看到该项目。您可以在上图中看到“ Yahoo”。它是一个外部链接菜单项。如果要将任何菜单项作为其他任何菜单项的子页面,只需拖动该菜单链接并将其放在父菜单下方。见上图。在上图中,“未分类”是“ yahoo”的子代。
  5. 您可以根据需要创建任意数量的菜单。但是您可以显示与主题兼容的菜单。您可以根据需要创建任意数量的菜单。
  6. 只需放置此行代码,您就可以在任意位置调用菜单。

           <?php $defaults = array( 'theme_location'  => ,
           'menu'            => ,
           'container'       => 'div',
           'container_class' => 'menu-{menu slug}-container',
           'container_id'    => ,
           'menu_class'      => 'menu',
           'menu_id'         => ,
           'echo'            => true,
           'fallback_cb'     => 'wp_page_menu',
           'before'          => ,
           'after'           => ,
           'link_before'     => ,
           'link_after'      => ,
           'items_wrap'      => '
           <ul id="%1$s" class="%2$s">%3$s</ul>',
           'depth'           => 0,
           'walker'          => );
           ?>
           <?php wp_nav_menu( $args ); ?> 
    

您可以根据需要选择参数。不要忘记在“菜单”自变量中包含菜单名称。