[WordPress]特定の固定ページへのリンクを管理メニューに追加する

特定の固定ページを管理画面メニューに追加してすぐに開ける様にしてみます。
今回はJavaScriptを使用します。

コードの利用は自己責任でお願いします。
利用しているテーマやテンプレートによっては正常に動作しない場合があります。

コード

以下のコードの(1)(2)を編集し、functions.phpに入力します。

add_action('admin_menu', 'custom_menu_pages_link');
function custom_menu_pages_link()
{
    /*(1)*/add_menu_page(‘固定ページリンク’, ‘固定ページリンク’, 'edit_pages', 'custom_menu_pages_link', 'add_custom_menu_pages_link', 'dashicons-text-page', 4);
}
function add_custom_menu_pages_link()
{
?>
    <script>
        window.location.href = 'post.php?post=/*(2)*/&action=edit';
    </script>
<?php
}

(1)、関数「add_menu_page」の内容を編集します。

add_menu_page(‘固定ページリンク(1)’, ‘固定ページリンク(2)’, 'edit_pages(3)', 'custom_menu_pages_link', 'add_custom_menu_pages_link', 'dashicons-text-page(4)', 4(5));
  1. メニュー画面で表示するタイトルを設定。
  2. 1と同じものを設定。
  3. メニューを表示するユーザーの権限を設定。
    基本的には固定ページ編集権限である「edit_pages」で問題ありません。
    (そもそも固定ページへのリンクを追加するだけなので、固定ページの編集権限がないユーザーはメニューにあってもリンクを開く事ができない。)
    参考:ユーザーの種類と権限
  4. メニューで表示するアイコンを設定します。
    参考:Developer Resources: Dashicons
  5. メニューを表示する位置を設定します。

(2)、固定ページのIDを記載。
(IDは固定ページ編集画面URLの「post=」の後の数字。)
 もしくは、固定ページのURLをそのまま貼り付けてしまいましょう。

まとめ

以上で完成です。
JavaScriptで転送しているだけなので非常に単純です。

当然ですが固定ページ以外も設定可能です。
外部リンクなどは別の設定が必要になる可能性もあるため今回は解説しません。

タイトルとURLをコピーしました