如何获取父菜单项的子项?

时间:2017-06-25 作者:Eseth

我创建了一个菜单,其中有几个项目(WooCommerce类别),每个项目都有几个子项目(WooCommerce产品)。

我正在努力检索父菜单项的子项。

Im使用以下代码获取父项:

$the_menu       = wp_get_nav_menu_object(\'Some Menu\');
$the_menu_items = wp_get_nav_menu_items($the_menu);

foreach ($the_menu_items as $index => $menu_item) {
    if ($menu_item->object_id == $category->term_id ) {
        $category_submenu = $menu_item;
    }
}
如何检索当前父项的子项?

提前感谢您!

1 个回复
SO网友:Eseth

作为解决方法,我有以下临时解决方案:

$the_menu       = wp_get_nav_menu_object(\'Some Menu\');
$the_menu_items = wp_get_nav_menu_items($the_menu);

$category_products = [];

foreach ($the_menu_items as $index => $menu_category) {
    if ($menu_category->object_id == $category->term_id ) {
        $category_submenu = $menu_category;
    }
}

foreach ($the_menu_items as $index => $menu_product) {
    if ($menu_product->type_label == \'Product\'
         && $menu_product->menu_item_parent == $category_submenu->ID
    ) {
        $category_products[] = $menu_product;
    }
}
我正在解析所有菜单项(父项和子项),根据当前类别ID获取必要的项,然后通过再次解析所有项并检查当前项(产品)父ID是否与父类别项ID匹配来检索每个类别的子项(产品),我只是将其放入一个数组中。

结束

相关推荐