首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将自定义post、类型编辑和列表屏幕显示为单独的子菜单项

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

Stack Overflow用户
提问于 2018-12-07 15:14:18
回答 1查看 112关注 0票数 0

我有一个名为meeting的自定义post类型,我希望将它的编辑和列表屏幕添加为自定义菜单项段段式meetings_settings下的单独子菜单项。

这是我现在的菜单设置

代码语言:javascript
复制
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');
}

根据研究结果,您可以在定制post类型上设置show_in_menu => 'edit.php?post_type=meeting',然后将子菜项的绘图函数设置为'edit.php?post_type=meeting',从而将自定义post类型添加为子菜单。我对这个部分有点困惑,因为这不只是包含该帖子类型的编辑屏幕吗?自定义post类型有两个屏幕:编辑屏幕和列表屏幕(加上类别和标记,但在本例中我不需要它们)。

您如何区分这两者,并添加编辑和列表屏幕的自定义post类型作为一个常规管理菜单项的子菜单项目,如上面?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-07 15:39:40

add_submenu_page函数的第一个参数是父片段,在本例中是'edit.php?post_type=meeting',在您的场景中,您需要添加一个链接到post类型编辑屏幕的自定义链接。因此,您将在functions.php中添加一个函数,该函数将手动添加链接

代码语言:javascript
复制
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);
}

注意:$submenu array()中的第二个参数是权限。相应变化

现在您只需要您的add_menu_page函数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53672246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档