3

バックグラウンド

WordPress の管理セクション (/wp-admin) には、ツール (ユーザーと設定の間) という名前のメニュー項目が含まれています。「利用可能なツール」という目立たないサブ項目があり、これは「Press This」という名前の機能を含むページです。

/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');
}

tools.php を削除すると、「使用可能なツール」セクションだけでなく、ツール セクション全体が削除されます。

また、ディレクトリから press-this.php を削除しようとしました。

どちらのアプローチも役に立ちませんでした。

オンラインのどこにも解決策が見つかりません。どんな助けでも大歓迎です。

4

3 に答える 3

6

この方法ではWP関数を使用します:
テスト済みで機能します

add_action( 'admin_menu', 'remove_tools' );
function remove_tools() {
    remove_submenu_page('tools.php', 'tools.php');
}
于 2012-04-19T11:59:48.307 に答える
3

フックを使用してグローバル varadmin_menuを変更できます。$submenu

add_action('admin_menu','modify_menu');

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

編集:janwが彼の答えで言ったように、代わりにremove_submenu_pageを使用する必要があります

于 2012-04-19T09:59:42.263 に答える
2

このコードを試してください。ユーザーが使用できる他のツールがない場合は、[ツール] メニュー全体が非表示になります。

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');
        }
}
于 2013-06-07T22:00:57.783 に答える