创建后以编程方式将页面添加到菜单

时间:2018-11-30 09:21:57

标签: php wordpress menu nav

我已经尝试了好几个小时了,但我没有运气。我知道这很容易丢失,但是在StackOverflow的任何地方都找不到。

我想要的是将在此处创建的页面添加到现有菜单(将为空白),或者删除当前菜单,创建一个新菜单并以这种方式添加页面,以较容易的方式。< / p>

这是我用来从插件界面添加页面(以及编辑/保存)的代码:

$titlep2 = $_REQUEST['titlep2'];
$post_text2 = $_REQUEST['post_text2'];
if($titlep2 != ""){
$posthwe_id2 = get_option("hwepag2");
    if($posthwe_id2 == ""){ 
        $hwea2 = array('post_title' => $titlep2,
                       'post_content' => $post_text2,
                       'post_status' => 'publish',
                       'post_type' => 'page');
        $post_idp2 = wp_insert_post($hwea2);
        update_option("hwepag2",$post_idp2);
    }else{
        $my_post2 = array('ID'           => $posthwe_id2,
                          'post_title'   => $titlep2,
                          'post_content' => $post_text2,
        );
        wp_update_post( $my_post2 );
    }
}

我尝试了wp_update_nav_menu_item的许多变体,但无法使其正常工作。我有一个现有菜单,但是添加此帖子时将为空白(这是我离线开发的新/新站点)。在这种情况下,在将元素添加到菜单之前,UL中似乎不存在“ menu-top”菜单ID。

因此,如果需要删除当前菜单,创建一个新菜单,然后将我要添加的页面添加到该菜单中,就可以了。

非常感谢您!

1 个答案:

答案 0 :(得分:1)

尝试以下操作: 转到外观>菜单>如果您有多个菜单,请选择您的菜单>选中下面的复选框“自动向该菜单添加新的顶层页面”。