Wordpress 将自定义帖子类型编辑和列表屏幕显示为单独的子菜单项

Wordpress 将自定义帖子类型编辑和列表屏幕显示为单独的子菜单项,wordpress,Wordpress,我有一个名为meeting的自定义帖子类型,我想在自定义菜单项slugmeetings\u settings下添加编辑和列表屏幕作为单独的子菜单项 这是我当前的菜单设置 add_action('admin_menu', 'wf_meetings_menu'); function wf_meetings_menu() { add_menu_page('Meetings', 'Meetings', 'manage_options', 'meetings_menu', 'meetings_se

我有一个名为
meeting
的自定义帖子类型,我想在自定义菜单项slug
meetings\u settings
下添加编辑和列表屏幕作为单独的子菜单项

这是我当前的菜单设置

add_action('admin_menu', 'wf_meetings_menu');
function wf_meetings_menu() {
    add_menu_page('Meetings', 'Meetings', 'manage_options', 'meetings_menu', 'meetings_settings');
    add_submenu_page('meetings_menu', 'Meetings Settings', 'Settings', 'manage_options', 'meetings_menu_settings', 'meetings_settings');
    // meetings list screen goes here
    add_submenu_page('meetings_menu', 'All Meetings', 'All Meetings', 'manage_options', 'meetings_menu_all', 'meetings_all');
    // meetings edit screen goes here
    add_submenu_page('meetings_menu', 'New Meeting', 'New Meeting', 'manage_options', 'meetings_menu_new', 'meetings_new');
}
通过研究,我发现您可以通过在自定义帖子类型上设置
show_in_menu=>“edit.php?post_type=meeting”
,然后将子菜单项的draw函数设置为
“edit.php?post_type=meeting”
。我对这一部分感到有点困惑,因为这难道不包括该帖子类型的编辑屏幕吗?自定义帖子类型有两个屏幕:编辑屏幕和列表屏幕(加上类别和标签,但在本例中我不需要它们)


如何区分这两种类型,并将自定义帖子类型的编辑屏幕和列表屏幕添加为上述常规管理员菜单项的子菜单项?

添加子菜单页面函数的第一个参数是父slug,在本例中是
'edit.php?post\u type=meeting'
,在您的场景中,您希望添加自定义帖子类型链接到帖子类型编辑屏幕的链接。因此,您需要在functions.php中添加一个函数,手动添加链接

add_action('admin_menu', 'meetings_admin_menu');
function meetings_admin_menu() {
    global $submenu;
    $new_url = 'post-new.php?post_type=meeting';
    $all_url = 'edit.php?post_type=meeting';
    $submenu['meetings_menu'][] = array('New Meeting', 'edit_posts', $new_url);
    $submenu['meetings_menu'][] = array('All Meetings', 'edit_posts', $all_url);
}
注意:
$子菜单array()
中的第二个参数是权限。相应地改变


现在您只需要
add\u menu\u page
功能。

好的,这就解释了编辑屏幕,但是如何在自己的页面中获得列表屏幕?它是否类似于
$submenu['meetings\u menu'][]=array('addmeetings'、'edit\u posts'、'edit.php?post\u type=meeting')