wordpress wp_insert_post 将页面添加到菜单
wordpress wp_insert_post adds page to the menu
我正在以编程方式在我的 WordPress 项目中添加一些页面。为此,我使用了 wp_insert_post() 函数。然而,这很好用。这些页面将自动添加到菜单中。对于他们中的一些人来说,这是好的,但我不想在那里添加的页面之一。
有没有办法在不手动删除的情况下防止这种情况发生。我想在创建页面后将其从菜单中删除,但我真的不知道该怎么做,也许有 better/easier 方法可以做到这一点?
我创建页面的代码是:
$inschrijfbevestiging = array(
'post_title' => 'Inschrijfbevestiging',
'post_content' => '[inschrijfbevestiging]',
'post_status' => 'publish',
'post_type' => 'page'
);
wp_insert_post($inschrijfbevestiging);
当您之前未设置菜单时出现此问题 theme_location
您必须为此 theme_location 设置菜单,这样它就不会自动更改。
1.Login 到 WordPress 仪表板。
2.From 仪表板左侧的 'Appearance' 菜单,select 'Menus' 用于调出菜单编辑器的选项。
3.Select 在页面顶部创建一个新菜单
4.Enter 在“菜单名称”框中为新菜单命名
5.Click 创建菜单按钮。
如果自动发生这种情况,您可以在创建页面后将其从菜单中删除:
$objectWithPage = get_page_by_path('pageslug');
$menu_item_ids = wp_get_associated_nav_menu_items( $objectWithPage->ID, 'post_type' );
foreach ( (array) $menu_item_ids as $menu_item_id ) {
wp_delete_post( $menu_item_id, true );
}
我正在以编程方式在我的 WordPress 项目中添加一些页面。为此,我使用了 wp_insert_post() 函数。然而,这很好用。这些页面将自动添加到菜单中。对于他们中的一些人来说,这是好的,但我不想在那里添加的页面之一。
有没有办法在不手动删除的情况下防止这种情况发生。我想在创建页面后将其从菜单中删除,但我真的不知道该怎么做,也许有 better/easier 方法可以做到这一点?
我创建页面的代码是:
$inschrijfbevestiging = array(
'post_title' => 'Inschrijfbevestiging',
'post_content' => '[inschrijfbevestiging]',
'post_status' => 'publish',
'post_type' => 'page'
);
wp_insert_post($inschrijfbevestiging);
当您之前未设置菜单时出现此问题 theme_location
您必须为此 theme_location 设置菜单,这样它就不会自动更改。
1.Login 到 WordPress 仪表板。
2.From 仪表板左侧的 'Appearance' 菜单,select 'Menus' 用于调出菜单编辑器的选项。
3.Select 在页面顶部创建一个新菜单
4.Enter 在“菜单名称”框中为新菜单命名
5.Click 创建菜单按钮。
如果自动发生这种情况,您可以在创建页面后将其从菜单中删除:
$objectWithPage = get_page_by_path('pageslug');
$menu_item_ids = wp_get_associated_nav_menu_items( $objectWithPage->ID, 'post_type' );
foreach ( (array) $menu_item_ids as $menu_item_id ) {
wp_delete_post( $menu_item_id, true );
}