对注册帖子类型时,需要设置show_in_menu
到您希望在其上显示的页面。
添加自定义帖子类型作为帖子的子菜单这里我们将“movies”帖子类型设置为包含在帖子下的子菜单中。
register_post_type( \'movies\',
array(
\'labels\' => array(
\'name\' => __( \'Movies\' ),
\'singular_name\' => __( \'Movie\' )
),
\'public\' => true,
\'has_archive\' => true,
\'show_in_menu\' => \'edit.php\'
)
);
如果您已将分类注册到自定义帖子类型,则还需要将其添加到页面中。
在里面add_submenu_page()
第一个参数是要分配给它的页面,最后一个参数是菜单slug。
add_action(\'admin_menu\', \'my_admin_menu\');
function my_admin_menu() {
add_submenu_page(\'edit.php\', \'Genre\', \'Genre\', \'manage_options\', \'edit-tags.php?taxonomy=genre\');
}
添加自定义帖子类型作为另一个自定义帖子类型的子菜单要将页面添加到另一个自定义帖子类型,请包括帖子类型的查询字符串参数以及页面名称。
要在post-type Entertainment下添加CPT电影及其分类流派,请调整如下代码。
edit.php
成为edit.php?post_type=entertainment
edit-tags.php
成为edit-tags.php?taxonomy=genre&post_type=entertainment
register_post_type( \'movies\',
array(
\'labels\' => array(
\'name\' => __( \'Movies\' ),
\'singular_name\' => __( \'Movie\' )
),
\'public\' => true,
\'has_archive\' => true,
\'show_in_menu\' => \'edit.php?post_type=entertainment\'
)
);
add_action(\'admin_menu\', \'my_admin_menu\');
function my_admin_menu() {
add_submenu_page(\'edit.php?post_type=entertainment\', \'Genre\', \'Genre\', \'manage_options\', \'edit-tags.php?taxonomy=genre&post_type=entertainment\');
}