性价比最高的香港ASP、PHP主机提供商
做网站,就上凡科建站

禁止WordPress菜单函数 wp_nav_menu() 输出 div 和 ul 标签

Loading
0
Comodo SLL证书促销 - 免费ssl证书申请_ssl证书购买_ev ssl证书_https证书购买 - GDCA_数安时代

使用 wp_nav_menu() 输出菜单是非常容易的事,为了实现主题菜单的某些样式效果,也许我们并不需要输出 div 和 ul 标签,下面就分享下具体的实现方法。

wp_nav_menu() 默认输出是带有 div 和 ul 标签的,比如:

1
2
3
4
5
6
<div class="menu-header-container">
	<ul id="menu-header" class="menu">
		<li class="current-menu-item"><a href="https://www.wpdaxue.com/">大学首页</a></li>
		<li><a href="https://www.wpdaxue.com/category/news">WordPress资讯</a></li>
	</ul>
</div>

我们要实现的效果应该是这样的:

1
2
<li class="current-menu-item"><a href="https://www.wpdaxue.com/">大学首页</a></li>
<li><a href="https://www.wpdaxue.com/category/news">WordPress资讯</a></li>

阅读 WordPress导航菜单函数register_nav_menus() 和 wp_nav_menu() ,了解了 wp_nav_menu() 的参数以后,我们不难发现,要去除 div 标签是非常容易的事情,只需添加 ‘container’ => false 参数即可。

要去除 ul 标签(只会去除最外围的 ul,对子级 ul 不影响),我们需要用到 items_wrap 参数。items_wrap 有三个可定义选项:

‘items_wrap’ => ‘<ul id="%1$s" class="%2$s">%3$s</ul>’

如果你要定义 ul 的 id 和 class 属性,可以直接修改 %1$s 和 %2$s 为具体的值,如果你要移除 ul 标签,使用参数 ‘items_wrap’ => ‘%3$s’ 即可

最终示例如下:

1
<?php if(function_exists('wp_nav_menu')) wp_nav_menu(array('container' => false, 'items_wrap' => '%3$s', 'theme_location' => 'foot-menu')); ?>

推荐阅读:移除 WordPress 菜单输出的多余的CSS选择器id或class

支付宝扫码打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者

MetInfo | 最适合企业网站建设的cms系统

关于 倡萌

一个疯狂的 WordPress 爱好者,喜欢折腾 WordPress 主题,分享 WordPress 资源。如果你也喜欢 WordPress,欢迎和我一起交流!

10 条评论

  1. 菜单链接中 菜单文本 如何给a加上一个class
    变成菜单文本

  2. 想知道最简单的 要去除 li 的方法?

  3. 话说如何去除li后保留class给a链接?

  4. 你好 我想在<ul id="menu-header" class="menu"> 这个后面加一句<div class="hcent"> 应该怎么添加?

发表评论