正如我最初怀疑的那样,menu-item-parent-id
获取菜单项的id,而不是父页的id。
因此,我引用了菜单项ID并将其传递给递归函数:
function buildMenu( $array, $menu_id, $parent_id = false ) {
foreach ($array as $menu) {
$menuItemId = wp_update_nav_menu_item(
$menu_id,
0,
array(
\'menu-item-title\' => $menu[0]->post_title,
\'menu-item-object\' => \'page\',
\'menu-item-object-id\' => $menu[0]->ID,
\'menu-item-type\' => \'post_type\',
\'menu-item-status\' => \'publish\',
\'menu-item-parent-id\' => $parent_id
)
);
if(!empty($menu[1])) {
buildMenu( $menu[1], $menu_id, $menuItemId );
}
}
}