php - 如何将新的 wp 菜单项作为变量传递?
问题描述
我使用此 WP 过滤器将新项目添加到我的菜单位置“主菜单”。
$logo = 'my logo';
function new_nav_menu_items($items, $args) {
if($args->theme_location == 'main-menu') {
$new_item = '<li class="spec"><a href="#"> $logo </a></li>';
$items = $new_item.$items;
}
return $items;
}
add_filter('wp_nav_menu_items', 'new_nav_menu_items', 10, 2);
wp_nav_menu(
array(
'theme_location' => 'main-menu',
'depth' => '3',
'link_before' => '<span>',
'link_after' => '</span>',
'echo' => true ,
'items_wrap' => '<ul class="%2$s clearfix">%3$s</ul>',
)
);
问题是过滤器返回带有新项目但具有空值的主菜单。如果作为变量传递,他没有输出项目值(我的徽标)。
解决方案
我通过函数传递我的值来解决它
function my_logo() {
$logo = 'my logo';
return $logo;
}
function new_nav_menu_items($items, $args) {
if($args->theme_location == 'main-menu') {
$new_item = '<li class="spec"><a href="#"> my_logo() </a></li>';
$items = $new_item.$items;
}
return $items;
}
add_filter('wp_nav_menu_items', 'new_nav_menu_items', 10, 2);
推荐阅读
- r - CSV 文件读入问题
- database - 如何按asc和desc对dexieDB中的对象数组进行排序?
- c# - Cosmos DB 和 Azure 函数 Get item .net 5 异步 foreach 语句无法对 FeedIterator 类型的变量进行操作
- ios - 登录表单中的验证在 Swift 中无法正常工作
- javascript - Error when trying to recall saved data using localStorage
- r - 如何在条形图标签中使用属性。R
- asp.net - 在页面加载事件中使用 RegisterAsyncPostBackControl 方法
- sql - 谷歌表格中的查询函数语法,用于连接具有日期格式的单元格以在日期范围内搜索。错误:#VALUE!无法解析
- ajax - Laravel CRUD Ajax 编辑:在下拉列表中显示选定的值
- c++ - 在 firefox.exe 中的 0x00007FFAF6BC72A6 (ntdll.dll) 处引发 libcurl 静态异常:0xC0000005:访问冲突写入位置 0x0000000000000024