检索菜单并将其转换为可读数组

时间:2021-01-22 作者:Md Shukur Miah

我在函数中添加了此代码。php检索菜单并将其转换为可读的数组,但它不起作用,请给出此警告。警告:为foreach()inC:\\xampp\\htdocs\\Upwork\\wp content\\themes\\truckloanhub\\functions提供的参数无效。phpon线路117

警告:为foreach()inC:\\xampp\\htdocs\\Upwork\\wp content\\themes\\truckloanhub\\functions提供的参数无效。phpon线路127

function wp_get_menu_array($current_menu) {



$array_menu = wp_get_nav_menu_items($current_menu);
   $menu = array();
   foreach ($array_menu as $m) {
       if (empty($m->menu_item_parent)) {
           $menu[$m->ID] = array();
           $menu[$m->ID][\'ID\']      =   $m->ID;
           $menu[$m->ID][\'title\']       =   $m->title;
           $menu[$m->ID][\'url\']         =   $m->url;
           $menu[$m->ID][\'children\']    =   array();
       }
   }
   $submenu = array();
   foreach ($array_menu as $m) {
       if ($m->menu_item_parent) {
           $submenu[$m->ID] = array();
           $submenu[$m->ID][\'ID\']       =   $m->ID;
           $submenu[$m->ID][\'title\']    =   $m->title;
           $submenu[$m->ID][\'url\']  =   $m->url;
           $menu[$m->menu_item_parent][\'children\'][$m->ID] = $submenu[$m->ID];
       }
   }
   return $menu;
}

1 个回复
SO网友:Bruno Ribarić

错误不在这段代码中。问题是你怎么打电话wp_get_nav_menu_array, 无论发生在哪里。$current\\u菜单可能无效,因此wp_get_nav_menu_items 退货false, 这样你就得到了你得到的错误。

您可以在用户提供的注释中看到如何为$current\\u菜单获取有效值的示例https://developer.wordpress.org/reference/functions/wp_get_nav_menu_items/#user-contributed-notes

相关推荐

Unable to edit Navigation bar

首先,我应该提到我对wordpress和web开发相当陌生。我的任务是更新包含导航栏的现有网站。我一直在挖掘代码,试图找出nav的实际代码存储在哪里。该站点是一个自定义构建主题,看起来是使用“骨骼”主题构建的。我已经尝试使用定制器来更改导航,但对于所需的内容,没有可用的选项。我已经通过ftp访问了主机,并查看了httpdocs/wp内容/主题等中的php文件。我发现最接近的内容是在标题中。主题>“自定义主题”>标题中的php。然而,php并不包含完整的菜单,它只引用徽标和一个过时的下拉按钮。我