【发布时间】:2014-11-28 14:45:17
【问题描述】:
我正在尝试制作一个没有 ul 和 li 的 wp 菜单,并将一个类添加到元素中。
我已经尝试在我的 function.php 中添加这个
function add_menuclass($ulclass) {
return preg_replace('/<a /', '<a class="list-group-item"', $ulclass, 1);
}
add_filter('wp_nav_menu','add_menuclass');
在我的模板中我有:
<?php
$menuParameters = array(
'menu' => 'Videos',
'container' => false,
'echo' => false,
'items_wrap' => '%3$s',
'depth' => 0,
);
echo strip_tags(wp_nav_menu( $menuParameters ), '<a>' );
?>
但输出仅将类应用于第一项,而不是预期的所有<a>s。
<div class="list-group">
<a class="list-group-item" href="#">First item</a>
<a href="#">Second item</a>
</div>
我正在努力实现这一点,基本上是将该类应用于我的所有项目(不知道为什么它只应用于一个项目)-请不要使用 jQuery。
<div class="list-group">
<a class="list-group-item" href="#">First item</a>
<a class="list-group-item" href="#">Second item</a>
</div>
【问题讨论】:
-
php.net/manual/en/function.preg-replace.php - 第四个参数,
$limit。您将其设置为1。阅读文档。非常非常清楚为什么当您明确要求它像那样工作时会发生这种情况。 -
澄清一下,您想为菜单中的每个 添加一个额外的类吗?
-
@rob_was_taken 是的
-
@SergiuParaschiv 好吧不知道。会检查出来
-
@SergiuParaschiv 感谢您的评论,我制定了自己的答案解决方案