gpt4 book ai didi

php - Wordpress - 为特定菜单定制 wp_nav_menu

转载 作者:可可西里 更新时间:2023-11-01 14:02:05 25 4
gpt4 key购买 nike

我有一个名为“header-menu”的菜单,我只希望这个菜单受到我在下面编写的函数的影响。如何防止其他菜单受到影响?

脚本在 header.php 中是这样调用的

<?php
wp_nav_menu(array('theme_location' => 'header-menu');
?>

在 functions.php 中,我希望这个过滤器在处理“header-menu”时知道

<?php
add_filter( 'wp_nav_menu_objects', 'my_menu_filter' );
function my_menu_filter( $items ) {
$i = 0;
foreach ( $items as $item )
{
if($i == 6)
$item->title = '<div id="end">.$item->title.</div>';
else
$item->title = '<div class="link">.$item->title.'</div>';
$i++;
}
return $items;
}
?>

最佳答案

找到了我自己问题的答案:

add_filter( 'wp_nav_menu_objects', 'my_menu_filter', 10, 2);
function my_menu_filter( $items, $args ) {
if($args->theme_location == "header-menu")
{
$i = 0;
foreach ( $items as $item )
{
if($i == 6)
$item->title = '<div id="end">' . $item->title . '</div>';
else
$item->title = '<div class="link">' .$item->title.'</div>';
$i++;
}
}
return $items;
}

答案是 add_filter 的第四个参数,它允许传递第二个对象。检查条件语句。

关于php - Wordpress - 为特定菜单定制 wp_nav_menu,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24592924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com