【WordPress】管理画面のメニュー項目のユーザーを非表示にしてプロフィールを表示する

こんにちは、ryohei(@ityryohei)です!

本記事では、WordPressで管理画面のメニュー項目のユーザーを非表示にしてプロフィールを表示する方法をご紹介しています。管理者権限のユーザーにてユーザー一覧を非表示にしたい場合に有効な方法です。

WordPressの管理画面のメニューにあるユーザーを非表示にしてプロフィールを表示したいな。良い方法ないかな?

上記の疑問にお答えします。

では、解説していきます。

本記事で実現したいこと

WordPressの管理画面にあるメニュー項目のユーザーを非表示にしてユーザーのプロフィールを表示することです。

権限グループが管理者のユーザーを提供しなければいけないけど、ユーザー一覧のページは非表示にしたい!

管理画面のメニュー項目のユーザーは、権限グループが管理者以上の場合に表示される項目です。そのため特定の管理者ユーザーの管理画面にあるメニュー項目からユーザーを非表示にしたいというのが本記事の目的です。

管理画面のメニュー項目のユーザーを非表示にする

管理画面のメニュー項目のユーザーを非表示にします。下記をfunctions.phpに追加することでメニュー項目のユーザーを非表示にすることができます。

<?php

function remove_menu() {
    remove_menu_page( 'users.php' );
}
add_action( 'admin_menu', 'remove_menu', 1000 );

参考:https://developer.wordpress.org/reference/functions/remove_menu_page/

ここではメニュー項目のユーザーを非表示する処理のみを記述していますので、実際の環境に導入する場合は下記のようにログインしているユーザーの情報を取得し、ログインしているユーザーを判定してからメニューを非表示にする処理を実行するようにしてください。

function remove_menu() {

    $current_user = wp_get_current_user();

    if ($current_user->user_login === "site_admin" ) {
        remove_menu_page( 'users.php' );
    }
}
add_action( 'admin_menu', 'remove_menu', 1000 );

注意点として、上記内容はメニュー項目を非表示にしているだけとなります。そのためURLを直打ちするとユーザー一覧ページにアクセスできる状態です。内容は省略させていただきますが、上記とあわせてユーザー→プロフィールへのリダイレクトを設定することでより安全に運用いただけますのでご検討ください。

管理画面のメニュー項目にプロフィールを追加する

管理画面のメニュー項目にプロフィールを追加します。下記をfunctions.phpに追加してメニュー項目にプロフィールを追加することができます。ここではユーザーの代替メニューとしてプロフィールを追加するため、ユーザーの箇所にプロフィールのメニュー項目を表示します。

<?php

function add_menu() {
    add_menu_page( 'プロフィール', 'プロフィール', 'manage_options', 'profile.php', '', 'dashicons-admin-users', 70 );
}
add_action( 'admin_menu', 'add_menu', 1000 );

参考:https://developer.wordpress.org/reference/functions/add_menu_page/

本項でも省略していますが、事前にログインユーザーを判定してからメニュー項目を追加する処理を実行するようにしてくださいね。

最後に

本記事では権限グループが管理者のユーザーにて、メニュー項目のユーザーを非表示にしてプロフィールを表示する処理をご紹介しました。なぜこのようなことをしたのかというと、クライアントが管理者ユーザーの提供を希望されたからです。普段の制作では編集者のユーザーをお渡ししていますが、管理者ユーザーでお渡しする必要があり、メニュー項目のユーザーを非表示にしたい場合に参考にしていただければと思います!

以上、WordPressで管理画面のメニュー項目のユーザーを非表示にしてプロフィールを表示する方法のご紹介でした!

おすすめの書籍

Adobe Creative Cloudを通常価格で購入していませんか?

Adobe Creative Cloud(Adobe CC)はAdobe社が提供するクリエイター向けのサービスです。WEB制作の幅を広げる「Photoshop・Illustrator・XD」Youtuberや動画クリエイターの編集作業に欠かせない「Premiere Pro・After Effects」など全20以上のアプリが提供されており、幅広いプランが用意されています。

コンプリートプランはAdobe CCの全20以上のアプリが使用できるプランです。多くのアプリが使用できるため定価で購入すると年間7万円以上するプランですが、デジタルハリウッドのAdobeマスター講座では「基礎動画教材+Adobe CC コンプリートプラン(12ヵ月)」がセットになって39,980円(税込)で利用できます。定価より安価にAdobe Creative Cloudのライセンスを購入でき、以降のライセンス更新も可能。動画教材で基礎スキルを習得できるので、入門する方にも便利な講座です。詳しくは下記のリンクからチェックしてみてくださいね。