我正在使用创建自定义帖子类型register_post_type
. 运行该功能后,管理面板中会出现一个新的菜单项。
此项下有以下菜单项:new_item
和all_items
. 考虑到我创建了一个自定义页面来管理这些帖子,有并没有办法了解这两个选项。
我正在使用创建自定义帖子类型register_post_type
. 运行该功能后,管理面板中会出现一个新的菜单项。
此项下有以下菜单项:new_item
和all_items
. 考虑到我创建了一个自定义页面来管理这些帖子,有并没有办法了解这两个选项。
可以操纵全局变量$submenu
并将其移除。在正常情况下,索引键值为5
(所有项目)和10
(新项目)。在此示例中,post类型为portfolio
:
add_action( \'admin_init\', \'remove_cpt_submenus_wpse_95797\' );
function remove_cpt_submenus_wpse_95797()
{
global $submenu;
unset(
$submenu[\'edit.php?post_type=portfolio\'][5],
$submenu[\'edit.php?post_type=portfolio\'][10]
);
}
Register the post type 具有show_ui
设置为false。就像Codex中样本的修改版本一样:
function codex_custom_init() {
$labels = array(
\'name\' => \'Books\',
\'singular_name\' => \'Book\',
\'add_new\' => \'Add New\',
\'add_new_item\' => \'Add New Book\',
\'edit_item\' => \'Edit Book\',
\'new_item\' => \'New Book\',
\'all_items\' => \'All Books\',
\'view_item\' => \'View Book\',
\'search_items\' => \'Search Books\',
\'not_found\' => \'No books found\',
\'not_found_in_trash\' => \'No books found in Trash\',
\'parent_item_colon\' => \'\',
\'menu_name\' => \'Books\'
);
$args = array(
\'labels\' => $labels,
\'public\' => true,
\'publicly_queryable\' => true,
\'show_ui\' => false, // this is the change
// \'show_in_menu\' => true, // only works with show_ui true
\'query_var\' => true,
\'rewrite\' => array( \'slug\' => \'book\' ),
\'capability_type\' => \'post\',
\'has_archive\' => true,
\'hierarchical\' => false,
\'menu_position\' => null,
\'supports\' => array( \'title\', \'editor\', \'author\', \'thumbnail\', \'excerpt\', \'comments\' )
);
register_post_type( \'book\', $args );
}
add_action( \'init\', \'codex_custom_init\' );
注意:使用。。。 \'show_ui\' => true,
\'show_in_menu\' => false,
。。。如果导航到该链接,则不会获得菜单项,但会获得管理页面,因此可以将其从菜单中删除,但如果需要,仍有一个正常运行的默认编辑系统。function remove_add_new_menu_wpse_94776() {
remove_submenu_page(\'edit.php?post_type=book\',\'edit.php?post_type=book\');
remove_submenu_page(\'edit.php?post_type=book\',\'post-new.php?post_type=book\');
}
add_action(\'admin_menu\',\'remove_add_new_menu_wpse_94776\');
那就是copied from another thread, 从函数名的数字后缀可以看出。上述情况可能会导致整个菜单仅在适当的情况下折叠到顶层,除非有其他菜单,这可能是您拥有的,但为了完整性,这里是一种虚拟菜单。function remove_only_add_new_wpse_95797() {
global $submenu;
add_submenu_page(
\'edit.php?post_type=book\',
\'test\',
\'test\',
\'edit_posts\',
basename(\'test\'),
\'test_cb_wpse_95797\'
);
}
function test_cb_wpse_95797() {
echo \'hi\';
}
add_action(\'admin_menu\',\'remove_only_add_new_wpse_95797\');
每个人我想重写并替换所有urlmydomain。com/wp管理/编辑。php->mydomain。com/wp管理/编辑/和mydomain。com/wp-admin/post-new。php->mydomain。com/wp admin/addnewpost/我如何做或建议?非常感谢你。