Php 获取不带任何HTML标记的Wordpress菜单

Php 获取不带任何HTML标记的Wordpress菜单,php,wordpress,Php,Wordpress,对于我的Wordpress网站,我通常使用wp_nav_menu()函数来显示自定义菜单。但这一次,我想让所有菜单元素都在php中的数组中,如下所示: array( "Menu 1" => array("title" => "Menu 1", "url" => "http://...", "subitems"=> array(...), "Menu 2" => ... ) 这只是一个例子。我尝试使用SQL获取菜单,但没有发现任何工作正常的东西。我的

对于我的Wordpress网站,我通常使用wp_nav_menu()函数来显示自定义菜单。但这一次,我想让所有菜单元素都在php中的数组中,如下所示:

array(
    "Menu 1" => array("title" => "Menu 1", "url" => "http://...", "subitems"=> array(...),
    "Menu 2" => ...
)
这只是一个例子。我尝试使用SQL获取菜单,但没有发现任何工作正常的东西。我的菜单包含页面、类别和外部链接。为了完成这一点,我的网站使用WPML,所以还有其他菜单


您能帮我吗?

我建议您使用wp\u get\u nav\u menu\u items()-函数来检索菜单,并从中选择要保留的任何少数元素

例如:

// the name of your menu
$menu_name = 'custom_menu_slug';

if ( ( $locations = get_nav_menu_locations() ) && isset( $locations[ $menu_name ] ) ) {
    $menu = wp_get_nav_menu_object( $locations[ $menu_name ] );

    $menu_items = wp_get_nav_menu_items($menu->term_id);

    foreach ( (array) $menu_items as $key => $menu_item ) {
        // build the array
    }
}

更多信息:

谢谢,我想我可以用它做我想要的:)