输出每个项目的管理菜单位置

时间:2016-02-09 作者:PUncle

是否有一个功能可以临时输出管理菜单中每个项目的menu\\u位置?

在尝试重新组织管理菜单时,让我慢下来的最大的一件事就是试图在心里跟踪哪个菜单项在哪里。

能够看到这些信息,而我这样做将是非常有益的!

谢谢

2 个回复
最合适的回答,由SO网友:PUncle 整理而成

嗯,像往常一样,在寻找了一段时间后,什么也没找到,在这里发布后,我几乎立即找到了一个解决方案here.

function custom_menu_order($menu_ord) {
    if (!$menu_ord) return true;

    return array(
        \'index.php\', // Dashboard
        \'separator1\', // First separator
        \'edit.php?post_type=custom-post-slug\' // Custom post slug
        \'edit.php\', // Posts
        \'upload.php\', // Media
        \'link-manager.php\', // Links
        \'edit.php?post_type=page\', // Pages
        \'edit-comments.php\', // Comments
        \'separator2\', // Second separator
        \'themes.php\', // Appearance
        \'plugins.php\', // Plugins
        \'users.php\', // Users
        \'tools.php\', // Tools
        \'options-general.php\', // Settings
        \'separator-last\', // Last separator
    );
}
add_filter(\'custom_menu_order\', \'custom_menu_order\'); // Activate custom_menu_order
add_filter(\'menu_order\', \'custom_menu_order\');
这似乎也适用于自定义post类型-请注意返回数组中的第三项,它是我创建的自定义post类型的slug。

如果在该数组中保留任何菜单项,该菜单项将显示在列表的末尾。

SO网友:Cai

我刚刚完成了一个插件,它(除其他外)允许对管理菜单进行重新排序。管理菜单的构造方式根本不是最容易使用的。话虽如此,看看admin_menu 钩您可以访问全局$menu 该点上的数组-包含每个菜单项的数组-每个菜单项都是包含该项所有详细信息的数组。然后可以执行以下操作:

/**
 * Prints the global $menu array
 * The elements in each item array are :
 * 0: Menu title
 * 1: Minimum level or capability required.
 * 2: The URL of the item\'s file
 * 3: Page Title
 * 4: Classes
 * 5: ID
 * 6: Icon for top level menu
 *
 * @global array $menu
 */
add_action( \'admin_menu\', \'wpse_217154_print_admin_menu\', 10 );
function wpse_217154_print_admin_menu() {

    global $menu;

    echo \'<pre>\';
    print_r($menu);
    echo \'</pre>\';
}

相关推荐

WP-ADMIN:“对不起,您不能访问此页面。”

两周后不使用我们的WP站点,登录/wp-admin/ 出现白屏错误:抱歉,不允许您访问此页面。我有:重命名plugins 到plugins.temp.通过phpMyAdmin创建了一个新的管理员用户。新用户已user_meta 的作用a:1:{s:13:"administrator";s:1:"1";}.</已重命名themes 到themes.temp.</删除核心WordPress文件,并替换为新上载的文件</已替换.htaccess 使用默认