管理画面のメニューが表示されない/権限が消えるときの原因

この記事はこんな人向けです
  • 管理画面に入れるのに、左のメニューがほとんど表示されず作業ができない
  • 自分は管理者のはずなのに、投稿・外観・プラグインなどが見えなくなった
  • テーマやプラグイン更新後に急に権限が変わった、誰かが設定を触ったかもしれない

WordPressレベル別 対応難易度

Lv1 Lv2 Lv3 Lv4 Lv5 Lv6 Lv7
レベル判断は、右のレベル表(スマホは画面下)を参考にしてください。

赤:外注推奨 オレンジ:条件付き自力可 緑:自力対応可

全体像と対応方針

メニュー非表示・権限喪失は、表示の問題(CSS/JS)と権限の問題(ロール/キャパビリティ)の大きく2系統に分かれます。
まずは「別ブラウザ」「別ユーザー」で再現性を確認し、再現するなら権限側、しないなら表示側を疑うと安全です。
修正を外注する前提でも、直前の操作や発生日のメモを残しておくと解決が早まります。

WordPressレベルごとのおすすめ対応

むりに触らず、状況メモだけ用意

メニューが消える原因は「プラグインの競合」「テーマの管理画面CSS/JS」「ロールデータ破損」「セキュリティ系プラグインの制御」「マルチサイト権限」など幅広く、闇雲に操作すると余計に権限が壊れる可能性があります。

いったん下記だけ実施しましょう。

  • 発生日と直前にやった操作(更新・プラグイン追加/設定変更・ユーザー追加など)をメモ
  • 管理画面のスクショ(ユーザー一覧での自分のロール名、表示されていないメニューの例)
  • 別ブラウザ/別端末/別ユーザーでも同じ症状か(再現性の確認)

赤レベルの方は、これらを保存しまして、修正を外注することをおすすめします。
管理画面上からでも、ユーザー/権限/DBに手を入れる作業は高リスクなので触らないのが正解です。

表示系の切り分けまで

ある程度自力で触れるオレンジレベルの方は、まずは「表示だけの問題」かどうかを切り分けます。
以下は比較的安全な確認です。(コード改修は不要)

  • ブラウザのシークレットモードでログインしても再現するか
  • ブラウザ拡張(広告ブロッカー等)をオフにしても再現するか
  • 別ユーザー(編集者/寄稿者など)でログインするとどうなるか
  • 「表示オプション」を非表示にしていないか(テーマやプラグインの設定で管理メニューを隠す機能がある)
  • 最近入れた、管理画面カスタマイズ系/ホワイトラベル系/セキュリティ系のプラグイン設定を閲覧のみで確認

この段階で「別ユーザーだと見える/別ブラウザでも見えない」などのパターンがわかります。
どの条件で消えるかが重要な手がかりになるので、必ず記録を残しておきましょう。
権限データの復旧やDB修正はこのレベルでは手を出さず、早めに外注依頼したほうが結果的に安いことが多いです。

権限/ロール/設定の整合性を点検

サーバー/DB操作に慣れている緑レベルの方なら、バックアップ取得のうえで次の観点を順に点検します。

  • ユーザーのロール:ユーザー編集で期待ロール(administrator等)になっているか。カスタムロールが適用されていないか。
  • capabilities の実体:wp_user_roles(オプション)に破損/欠落がないか。権限編集系プラグインの影響で administrator から manage_options 等が外れていないか
  • DBプレフィックス変更の影響:移行やセキュリティ措置で $table_prefix を変えた際、usermeta に残る {$prefix}capabilities/{$prefix}user_level が不整合になっていないか。
  • セキュリティ/管理系プラグイン:特定ロールのメニューを隠す設定、ログイン先URL変更、IP制御、ファイアウォールで管理JS/CSSがブロックされていないか。
  • テーマの functions.php:remove_menu_page()・current_user_can() 条件で意図せず非表示にしていないか。条件分岐に管理者以外を想定したまま残っていないか。
  • 表示系の壊れ:管理画面でJSエラー(コンソール)やCSSの display:none 指定、管理バー/メニューのDOM欠落がないか。
  • マルチサイト:ネットワーク管理者と各サイト管理者の権限差、ユーザー割当のズレ、スーパ?管理者での表示有無。
  • キャッシュ/オブジェクトキャッシュ:キャッシュプラグインやサーバーキャッシュ、Object Cache(Redis/Memcached)で wp_user_roles が古い状態のままになっていないか。

復旧の基本は、①正しいロール割当の再設定②capabilities の再生成/再読み込み③原因プラグイン/テーマの切り分け の順。
障害発生日と一致する更新・導入履歴を軸に、変更点を一点ずつ戻しながら検証するのが安全です。

よくある原因チェックリスト(観点整理)

  • 表示系:管理画面CSS/JSの競合、広告ブロッカー、ホワイトラベル設定、管理メニューを隠すUI設定
  • 権限系:ロール編集プラグインの誤設定、wp_user_roles破損、DBプレフィックス不一致、マルチサイトのロール未割当
  • 移行/復元後:プレフィックス変更・シリアライズ不整合・キャッシュ残存によるロール未反映
  • セキュリティ:WAF/セキュリティプラグインが管理用リソースをブロック、特定ロールのメニューを不可視化
  • テーマ/カスタマイズ:remove_menu_page() や条件分岐の残骸でメニューが隠れている

外注する場合のポイント

権限やロールの復旧は「短時間で直ることもあれば、根が深い」こともあります。スピード重視なら早めの外注がおすすめです。

項目ポイント
費用の目安 ・表示系の軽微な不具合(CSS/JS競合の特定)なら 5,000~15,000円
・ロール/キャパビリティの修復、移行後の整合性調整は 20,000~50,000円
・マルチサイトや複数環境の整備込みだと 50,000円~ になることも
依頼の流れ 1. 症状と再現条件の共有(ユーザー/端末/ブラウザ別の違い)
2. 発生日と直前の操作(更新・導入・設定変更)のリスト化
3. 見積→バックアップ→調査→復旧→再発防止策の提案
準備しておくと便利 ・管理画面URLと対象ユーザーのメール/ロール名
・再現手順のスクショ/動画(どのメニューが見えないか)
・サーバー/キャッシュ/セキュリティの利用状況(WAFやRedis等)
・移行/復元履歴、最近の変更点のメモ
まとめ

メニューが消える問題は、見た目の壊れと権限の壊れが混ざって見えるのがややこしいポイントです。

は記録だけ残して外注、オレンジは表示系の切り分けまで、はロール/DB整合性まで点検という役割分担で進めると安全です。

再現条件と直前の操作を整理しておけば、原因特定が早まりコストも抑えられます。

迷ったら無理をせず、早めに相談して確実に復旧しましょう。

  • Lv1 初心者 初心者 … ログインなど基本も不安
  • Lv2 基本操作 基本操作 … 投稿OK/更新は不安
  • Lv3 投稿メイン 投稿メイン … 記事更新・差替えはできる
  • Lv4 更新ユーザー 更新ユーザー … テーマ/プラグイン更新経験あり
  • Lv5 データ操作 データ操作 … DBやバックアップを理解
  • Lv6 カスタマイザー カスタマイザー … 子テーマ・CSS修正が可能
  • Lv7 マスター マスター … コード/サーバーまで自走可能