管理部分中CPT页面上方的设置页面

时间:2011-08-05 作者:Matt

我正在创建一个插件,它可以生成一个方便的或自定义的帖子类型(CPT)。我在管理左侧边栏中创建了一个顶级菜单,使用add_menu_page(). 然后,我使用将所有CPT添加到此菜单register_post_type()\'sshow_in_menu 选项我还创建了一个插件设置页面,使用add_submenu_page(), 我还将其添加到顶部菜单。

我的问题是,我无法使设置页面显示在子菜单中CPT页面的上方。我做了register_post_type() 调用“init”操作,然后add_submenu_page() 调用“admin\\u menu”操作(发生在“init”之后)。因此,CPT页面放在第一位是有道理的。我无法移动register_post_type() 在流程的后期调用(注册CPT为时已晚,我无法移动add_submenu_page() 更早(之前未定义)。

我必须忍受它吗?

1 个回复
SO网友:Bainternet

您可以使用menu_order 过滤器挂钩更改顺序

function custom_menu_order($menu_ord) {
       if (!$menu_ord) return true;
       return array(\'settings_page.php\', \'edit.php?post_type=CTP1\',\'edit.php?post_type=CTP2\',\'edit.php?post_type=CTP3\');
}

add_filter(\'custom_menu_order\', \'custom_menu_order\');
add_filter(\'menu_order\', \'custom_menu_order\');

结束

相关推荐

Using the loop inside admin

我有以下问题:我正在为用户创建一个自定义元框,以便以友好的方式添加自定义字段我想生成一个下拉框,其中包含类别10下的所有帖子我在函数文件中创建了一个循环,用于检索我想要的帖子,并创建一个下拉选择列表。因此,当我转到“管理”->“帖子”并选择要编辑的帖子时,我会遇到以下问题:无论我选择哪个帖子,都会加载最后一篇帖子。以下是函数文件中使用的代码,然后在为自定义元框生成html代码时调用:function get_project_ids($proj_cat = 10) { $output