0
我想获取当前的菜单ID。我看到很多使用pageid的解决方案,但当链接到同一页面的菜单项超过1个时,这不起作用。据我可以看到§wp_query给我的page-id,而不是menu-id。WordPress的当前菜单ID
有没有人有想法该怎么办?
我想获取当前的菜单ID。我看到很多使用pageid的解决方案,但当链接到同一页面的菜单项超过1个时,这不起作用。据我可以看到§wp_query给我的page-id,而不是menu-id。WordPress的当前菜单ID
有没有人有想法该怎么办?
添加过滤器wp_nav_menu_objects,
add_filter('wp_nav_menu_objects', 'mwilson123_wp_nav_menu_objects');
function mwilson123_wp_nav_menu_objects($menu_items)
{
foreach ($menu_items as $menu_item) {
if ($menu_item->current) {
$GLOBALS['mwilson123_id'] = $menu_item->ID;
break;
}
}
return $sorted_menu_items;
}
现在你可以使用这个全局变量$GLOBALS['mwilson123_id']
以往任何时候都需要在那里。
首先,您是否想要返回$ menu_items而不是$ sorted_menu_items? – Cyberish
add_filter('wp_nav_menu_objects','wpse_wp_nav_menu_objects'); 功能wpse_nav_menu_objects($ sorted_menu_items) { 的foreach($ sorted_menu_items为$ MENU_ITEM){ 如果($ menu_item->电流){ 回声$ menu_item->标题; 休息; } } return $ sorted_menu_items; } –
这阻止了第一个链接到特定页面的项目,如果2个菜单项链接到同一页面,该怎么办? – Cyberish