从WordPress管理员中删除工具.php页面



Background

WordPress 管理员部分 (/wp-admin) 包含一个名为 tools 的菜单项(在用户和设置之间)。它有一个名为"可用工具"的突兀子项,这是一个包含名为"按此"的功能的页面。

/wp-admin/tools.php

我的问题

如何从工具部分删除此页面?

我尝试过什么

我尝试了一个删除菜单项的功能:

    add_action( 'admin_menu', 'my_remove_menu_pages' );
function my_remove_menu_pages() {
    remove_menu_page('press-this.php');
    //remove_menu_page('tools.php');
}

如果我删除工具.php,则会删除整个工具部分,而不仅仅是"可用工具"部分。

我还尝试从目录中删除 press-this.php。

这两种方法都无济于事。

我在网上任何地方都找不到解决方案。任何帮助将不胜感激。

这种方式使用WP函数:
经过测试和工作

add_action( 'admin_menu', 'remove_tools' );
function remove_tools() {
    remove_submenu_page('tools.php', 'tools.php');
}
您可以使用

admin_menu钩子来修改全局变量$submenu

add_action('admin_menu','modify_menu');
function modify_menu()
{
  global $submenu;
  unset($submenu['tools.php'][5]);
}

编辑:正如 janw 在他的回答中所说,你应该改用remove_submenu_page

试试这段代码。如果用户没有其他工具可用,它将隐藏整个"工具"菜单。

add_action('admin_init', 'remove_tools_admin_menu');
    function remove_tools_admin_menu() {
        global $submenu;
        unset($submenu['tools.php'][5]);
        if(count($submenu['tools.php']) == 0) {
            remove_menu_page('tools.php');
        }
}

最新更新