「管理画面」タグアーカイブ

【解決済】WordPressで「このサイトで重大なエラーが発生しました。対応手順については、サイト管理者のメール受信ボックスを確認してください。」WordPressのトラブルシューティングについてはこちらをご覧ください。」と言われログインできない時の対処法

WordPressで「このサイトで重大なエラーが発生しました。対応手順については、サイト管理者のメール受信ボックスを確認してください。」と言われログインできない

自動アップデートなどが原因で、特に何も触ってないのに「このサイトで重大なエラーが発生しました。対応手順については、サイト管理者のメール受信ボックスを確認してください。」と言われて急に管理画面にログインできなくなることがある。

こんな画面が出たら要注意。でもフロントサイトは通常通り見えているし、解決方法はあるしそれほど難しくないので焦る必要はない。

手順1 wp-config.php にWP_DEBUG trueを入れる

まず、FTPソフトなどでダウンロードした wp-config.php に

define( 'WP_DEBUG', true );

を追記して上書きアップロードする。

記載場所は下記画像辺りに入れておけば良い。

これで、どの部分が問題で管理画面にログインできないのかが見えるようになる。

なお、セキュリティ的に、バグ箇所を確認した後で

define('WP_DEBUG', false);

に戻しておく方がいいだろう。

手順2 該当プラグインのフォルダをリネームして削除

バグ箇所が分かれば、その原因のプラグインをリネームして無効化することでトラブルはとりあえず解消される。

今回の例では Search Regex というプラグインが原因だった。
WordPress 5.9系と相性が悪いようだ。

FTPソフトで、wp-content/plugins/ の中から、該当のプラグインのフォルダごと名前を変更しよう。

今回の場合は「search-regex」なので「search-regex.bk」でも「search-regexmukou」でも何でもいい。
名前を変えてしまえばそれでOK。

これでログインできるはずだ。

手順3 該当プラグインの再インストールまたは削除

ログインした後、名前を変更して無効化したプラグインは動いていない。

使いたい場合は最新版を再インストールする。

もしくは不要であればアンインストールして、FTPソフトの方で名前を変更したプラグインの残骸をフォルダごと削除すればOK。

WordPressの管理画面、ダッシュボードでオリジナルパーツ(独自メタボックス)を追加する方法 BuddyPressカスタマイズメモ

管理画面のダッシュボードで、独自のパーツ(メタボックス)を作って追加表示させる

WordPressのSNSプラグイン、BuddyPressを導入すると不特定多数のメンバーが参加することになる。

管理者以外には、Wordpressのニュース、WordPress イベント、ようこそ画面など(ダッシュボードのメタボックスと呼ぶ)不要なものは全て非表示にしたうえで、独自のメタボックスを追加する方法を紹介。

ちなみに非表示にする方法はこちらを参照:
ダッシュボード画面(管理画面)の「アクティビティ」「クイックドラフト」などを非表示 WordPress BuddyPressカスタマイズメモ
 

独自メタボックス追加したい場合

普通の管理画面は色々と便利なウィンドウがあるが、記事を投稿してもらう人には不要なものばかり。

なので、不要なものを非表示にした上で

オリジナルの「クイックアクセス」というメタボックスを追加してみよう。

 

追加方法と記述のしかた

記述は簡単で、functions.php に下記のように書くだけ。

function my_meta_box(){
 add_meta_box( 'my_meta_box', 'クイックアクセス', 'my_meta_box_in', 'dashboard', 'normal', 'core' );
}
function my_meta_box_in(){
 echo '<a href="https://xxxxxxxx.com/">ホームページを確認</a><br />';
 echo '<a href="https://xxxxxxxx.com/wp-admin/post-new.php">新しく記事を書く</a><br />';
 echo '<a href="https://xxxxxxxx.com/wp-admin/profile.php">個人設定やプロフィールを編集</a><br />';
}
add_action( 'admin_menu', 'my_meta_box' );

‘クイックアクセス’の部分はタイトルなので、好きなタイトルでOK。

今回はリンクを貼り付けただけだが、phpで様々な機能を持たせることができる。

管理画面のプロフィールで、子テーマのfunctions.phpでsangoの親テーマによるfunctionsの追加項目を削除する WordPress BuddyPressカスタマイズメモ

管理画面のプロフィールで、sangoによる追加項目を一旦削除

WordPressの管理画面のプロフィールで、親テーマによって追加される項目を削除したい。

remove_filter('user_contactmethods', 'add_user_contactmethods');

でフィルターフックを削除できるのだが、

functions.phpに記述したものは、子テーマ → 親テーマ の順で適用される。

子テーマでいくら remove_filter しても、親テーマで上書き add_filter されてしまうので、効果がない。

親テーマの後に remove する必要がある。
 

functions.php へ記述

add_action( 'after_setup_theme', '' );

にフックすると、テーマの読み込み後(つまり、親テーマのfunctions.php後)に処理してくれる。

//管理画面のプロフィールのsangoの追加項目を一旦削除

function remove_sango_add_user_contactmethods()
{
 remove_filter('user_contactmethods', 'add_user_contactmethods');
}
add_action( 'after_setup_theme', 'remove_sango_add_user_contactmethods' );

これで、OK