问题:是否有可能在wordpress中的wp_nav_menu中获取下一个/上一个页面ID。
示例:我有这样的导航菜单
Menu_Item_1 (ID = 5)
>SubMenu_Item_1-1
>SubMenu_Item_1-2
Menu_Item_2 (ID = 11)
>SubMenu_Item_2-1
>SubMenu_Item_2-2
如果我在Menu_Item_1或其任何子页面上,则下一个顶级菜单项(在本例中为Menu_Item_2)的id必须存储在变量中,依此类推。
答案 0 :(得分:0)
您可以创建自定义助行器来实现此目的。 Here是对此的详细解释。
OR
此外,这是一个可能的解决方法:
编辑wp-includes文件夹下的nav-menu-template.php文件。
向下滚动到第行。 114看起来像:
$output .= $indent . '<li' . $id . $value . $class_names .'>';
将此行替换为:
$output .= $indent . '<li' . $id . $value . $class_names .' data-id='. $item->object_id .'>';
这会在所有<li>
中添加原始ID,如下所示:
<li id="menu-item-29" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-29" data-id="14">
此处data-id
具有您需要的ID。您可以使用jQuery来获取此ID:
targetId = $('#menu-item-29').attr('data-id');
注意:更新Wordpress安装后,这些更改将被覆盖。