У меня проблемы с навигацией по WordPress. У меня есть следующая функция, которая тянет пункты меню от администратора:
function cr_get_menu_items($menu_location)
{
$locations = get_nav_menu_locations();
$menu = get_term($locations[$menu_location], 'nav_menu');
return wp_get_nav_menu_items($menu->term_id);
}
В своем шаблоне навигации я использую эту функцию для добавления только родительских элементов, таких как:
<?php $nav = cr_get_menu_items('navigation_menu') ?>
<?php foreach ($nav as $link):
if ($link->menu_item_parent == 0) : ?>
<a class="main-nav" href="<?= $link->url ?>"><?= $link->title ?></a>
<?php endif; endforeach; ?>
Я попытался создать вспомогательную навигацию, которая показывает дочерние элементы, например:
<?php $nav = cr_get_menu_items('navigation_menu') ?>
<?php foreach ($nav as $link):
if ($link->menu_item_parent !== 0) : ?>
<a href="<?= $link->url ?>"><?= $link->title ?></a>
<?php endif; endforeach; ?>
Это тянет ВСЕ пункты детского меню. Навигация, которую я создаю, должна работать так: вы щелкаете по родительскому элементу меню, и суб-навигация отображает все дочерние элементы меню для этого родителя. Все функции скрытия / отображения - JS.
Есть ли способ изменить функцию, которую я должен использовать только для дочерних элементов определенного родительского пункта меню? Любая помощь / руководство приветствуется.