概要
Wordpressのサイト・ヘルス・チェックはサイトを健全に保つために必要なものですが、ユーザーにはどうしようもない警告が出ることがあります。主なものは「オブジェクト・キャッシュ」に関する警告と、「ページ・キャッシュ」に関する警告です。
オブジェクト・キャッシュ
これはWordpressがデータベースにアクセスするときの負荷を軽減するための機能ですが、そもそもオブジェクトキャッシュを設定できない環境でWordpressを使っていたり、オブジェクトキャッシュができるプラグインが有料のくせにサポートが最悪とのコメントが散見されたりするのが嫌だったりするので、もうべつに今のままでいいよ!ということになりました。
ページキャッシュ
ページキャッシュとはWordpressで作った様々なページをあらかじめキャッシュしておいて、実際に要求があったときはこのキャッシュファイルの中身を即座に返すことで反応速度を上げています。そこでこれを実現するプラグインのユーザーコメントを読んでみると・・・
あるわあるわ不都合のオンパレード。特にページの多いブログなどを運用している場合、数千ページのキャッシュができてしまい、ディスクを圧迫するしページがちゃんと表示されないなどの不具合もあるようなので、これもプラグインで解決するのを止めました。
原因がわかってるのだからチェック事態を無効化しちゃえ!
はっきり言って上記の2つのチェック機能は、理屈がわかっているユーザーには無用なものでしかないような気がしますので、設定画面などでユーザーがON/OFFできる機能を付けてほしいものですが、いまのところは直値もハードコードしちゃってるし、どうしょうもないので、チェック機能自体をキャンセルしてしまうことにしました。
くれぐれも上記2つのヘルスチェックが何を意味しているのか分からない人はこの下のチェックを停止する処理は入れないことをお勧めします。上記の2点のチェック項目の意味を理解し、このチェックを止めなければならない理由をちゃんとわかっている人だけが下記の停止命令を組み込んでください。いずれの場合もすべて自己責任でお願いします。
外見→テーマファイルエディタ
テーマファイルエディアを起動したら、「functions.php」を指定して以下のコードを記入してください。
オブジェクトキャッシュの停止
add_filter( 'site_status_should_suggest_persistent_object_cache', '__return_false' );
function disable_object_cache_check( $tests ) {
unset( $tests['direct']['persistent_object_cache'] );
return $tests;
}
add_filter( 'site_status_tests', 'disable_object_cache_check' );
ページキャッシュの停止
function disable_full_page_cache_check( $tests ) {
unset( $tests['async']['page_cache'] );
return $tests;
}
add_filter( 'site_status_tests', 'disable_full_page_cache_check' );