昊天SEO

如何删除wordpress自定义菜单函数wp_nav_menu的div ul li标签

最近帮客户做企业,在做页脚添加一个导航菜单的时候,模板代码是a标签,不是li标签容器。所以在设置wordpress自定义菜单时,内容排版就出现了一些小问题。因为wordpress 中的自定义菜单函数 wp_nav_menu 默认输出的格式为:

<div>
<ul>
	<li><a>菜单文字</a></li>
</ul>
</div>

 

 

所以去掉这个div ul li三个标签就是头疼的问题了,还真没有几个可以完全解决的。有人想到这样解决,

<?php
echo str_replace("</ul></div>", "", ereg_replace("<div[^>]*><ul[^>]*>", "", 
wp_nav_menu(array('theme_location' => 'primary', 'echo' => false)) ));
?>

 

 

还有人这样做, ‘container’ => ‘false’, ‘items_wrap’ => ‘%3$s’ ,这个确实可以去除div 和 ul 元素,但是,发现 li 标签无法去除,那要怎样才能去除掉 li 呢?

 

 

最终找到以下代码实现去除 div ul li 三个标签的。

<?php 
	$menuParameters = array(
		'container'	=> false,
		'echo'	=> false,
		'items_wrap' => '%3$s',
		'depth'	=> 0,
	);
	echo strip_tags(wp_nav_menu( $menuParameters ), '<a>' );
?>

本文地址官网    新乡网站建设,seo

分享到:更多 ()

评论 2

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #2

    那如果div ul li 去掉的同时,要给a加class属性,该怎么写呢。跪求指导

    史派西1年前 (2015-08-17)回复
  2. #1

    真是太感谢了!

    skeey8个月前 (04-27)回复