您好我正在使用自定义wp_nav_menu设置的wordpress主题,但我想进一步自定义。但我不知道该怎么做。
主题有一个菜单功能:
function litho_default_wp_menu()
{
$args = array(
'sort_column' => 'menu_order, post_title',
'menu_class' => 'menu',
'include' => '',
'exclude' => '',
'echo' => false,
'show_home' => false,
'link_before' => '',
'link_after' => '' );
$menu = wp_page_menu( $args );
$menu = preg_replace('/^(<div class\="menu"><ul>)/i','',$menu);
$menu = preg_replace('/(<\/ul><\/div>)$/i','',$menu);
echo '<ul class="simple-nav">'.$menu.'</ul>';
}
并输出一个代码如下所示的菜单:
<div class="row" id="main_menu">
<div class="columns six">
<nav role="navigation">
<ul class="simple-nav">
<li class="page_item page-item-15 current_page_item"><a href="http://192.168.0.16:8888/">HOME</a></li>
<li class="page_item page-item-38"><a href="http://192.168.0.16:8888/directing/">DIRECTING</a></li>
<li class="page_item page-item-40"><a href="http://192.168.0.16:8888/compositing/">COMPOSITING</a></li>
</ul>
</nav>
</div>
</div>
但是,我使用Isotope作为我的主题,过滤和排序页面内容而不是转到另一个页面。并希望我的菜单显示如下:
<div class="row" id="main_menu">
<div class="columns six">
<nav role="navigation">
<ul id="filters">
<li><a href="#" class="all" data-filter="*">show all</a></li>
<li><a href="#" class="directing" data-filter=".directing">directing</a></li>
<li><a href="#" class="compositing" data-filter=".compositing">compositing</a></li>
</ul>
</nav>
</div>
</div>
我该怎么做?我现在正在阅读有关wp_nav_menu以及如何自定义它的内容,但我想也会在这里问。
谢谢
答案 0 :(得分:0)
您可以创建自定义菜单。自定义菜单可以使用wordpress管理功能进行编辑,因此您可以按照您想要的顺序添加它们,添加外部链接或链接到您在wordpress中的任何帖子/分类。文档在这里:https://codex.wordpress.org/Navigation_Menus
然而,就像将以下代码添加到插件或functions.php文件一样简单:
function register_my_menus() {
register_nav_menus(
array(
'custom-menu' => __('Custom Navigation Menu')
)
);
}
add_action( 'init', 'register_my_menus' );
接下来,您必须在wordpress admin中创建菜单,导航到:Appearance&gt;菜单&gt;创建一个新菜单(在页面顶部)。
命名菜单,然后在它下面,它将包含由插件/主题指定的自定义菜单ID的复选框..这些被称为主题位置。您可以选中自定义菜单名称旁边的框 - 在本例中为“自定义菜单”。
然后,您可以执行以下操作之一:
向模板添加代码以打印导航。
wp_nav_menu( array( 'theme_location' => 'custom-menu' ) );
使用您创建的菜单将自定义菜单小部件添加到侧边栏。
最后,您可以使用css设置窗口小部件的样式。
希望有所帮助。