WordPressのサイトヘルスの使い方・改善方法

,

2019年5月7日に正式にリリースされたWordPress 5.2「Jaco」からWordPressの安全性や問題点をチェックする「サイトヘルス」という機能が導入されました。

以前は、WordPressが最新版になっているかどうか、プラグインが最新版かどうかなどは自分でチェックするか別途プラグインを導入してチェックしていましたが、サイトヘルス機能が導入されたことで今までよりも簡単にチェックできるようになりました。

今回は、WordPressの「サイトヘルス」の使い方を説明していきます。

WordPress「サイトヘルス」の使い方

サイトヘルスの開き方

サイトヘルスは管理画面から [ツール] -> [サイトヘルス] をクリックすることで開けます。

ツールに分類されているので、基本的には特権管理者または管理者の権限グループのアカウントでログインしている時だけ見れる画面になります。

サイトヘルスの画面

サイトヘルスの画面

診断結果が改善が必要の場合

ステータスが改善が必要と表示されます。

問題点は深刻度合いによって「致命的な問題」「おすすめの改善」「問題のない項目」に分類されて表示されます。

問題がある場合

診断結果が良好の場合

ステータスが良好と表示されます。サイトヘルスがチェックできる範囲では追加でする対策は必要ないですが、セキュリティ対策をすべてチェックしてくれる訳ではないので、別途プラグインなどでセキュリティ対策をすることをおすすめします。

また、サイトヘルスのチェックを通過した場合は画面下の「テスト通過」をクリックすると問題がなかった項目を確認できます。

問題ない場合

診断結果が良好だけど改善項目が表示される場合

ステータスが良好と表示されている場合でも、改善項目がいくつか表示される場合があります。

とくに「おすすめの改善」については重要度は低いけど、やっておくと良いというものがそれに該当します。

サイトヘルスの改善方法

WordPressの更新が可能

「WordPressの更新が可能」という改善項目は、WordPressが最新バージョンではない場合に表示されます。

WordPressの最新バージョンは短い間隔でリリースされていて、使いやすさ、パフォーマンスの改善、セキュリティの向上など数多くの点が改善されている場合があります。

悪意のある人から攻撃をうける可能性が高いので、セキュリティ対策としてもWordPressは常に最新版にしたほうが良いです。

改善方法

WordPressをアップデートするには管理画面より 「ダッシュボード」 -> 「更新」 をクリックします。

「WordPressの新しいバージョンがあります」の項目に [バージョン X.X に更新] というボタンがありますのでクリックします。

アップデートが終わるとサイトヘルスのメッセージが消えると思います。

WordPressのアップデート方法については別記事で詳しく紹介していますのでチェックしてみてください。

更新可能なプラグインがあります

「更新可能なプラグインがあります」という改善項目は、インストールしているプラグインが最新版ではない場合に表示されます。

「WordPressの更新が可能」と並ぶくらい重要で、使いやすさ、パフォーマンスの改善、セキュリティの向上など数多くの点が改善されている場合があります。

プラグインの中には脆弱性(セキュリティホール)があるのに放置されていたり、プラグインの作りがあまく良く悪意のある人から標的にされているプラグインが数多くあります。被害に合わない為にも日頃からアップデートしておくおことをお勧めします。

改善方法

ダッシュボードから 「プラグイン」 -> [インストール済みプラグイン] を開き、「新バージョンの XX が利用できます。」というメッセージが表示されているプラグインの 「更新」 をクリックしてアップデートしてください。

プラグインの一覧画面での更新方法

アップデートが完了するとメッセージが消えます。

サイトが PHP の非常に古いバージョン X.X で動作しています。更新してください。

「サイトが PHP の非常に古いバージョン X.X で動作しています。更新してください。」という改善項目は、WordPressが動作しているサーバーにインストールされているPHPが非常に古い場合に表示されます。

WordPressは主にPHPというプログラミング言語で構築されています。

PHPは、セキュリティやパフォーマンスの向上を考慮してアップデートされていますが、古いPHPはサポート期間が終了していて既にメンテナンスされていない状態である可能性が高いので、すぐにPHPのバージョンをアップデートすることをおすすめします。

改善方法

サーバーにインストールされているPHPをWordPressの動作環境を満たすバージョンにする必要があります。

WordPressの動作環境はWordPressのバージョン毎に違いますが、最新版であれば公式サイトに記載されています。

WordPress のホスティング要件

PHPのバージョン変更方法はレンタルサーバーの場合はサーバーの管理画面からボタンをクリックすることで切り替えができます。

あまりメンテナンスがされていないサーバーであれば、PHPの切り替えがそもそもできない場合があるのでサポートを受ける必要があります。

PHP デフォルトタイムゾーンが無効です

「PHP デフォルトタイムゾーンが無効です」という改善項目は、なんらかの原因により、WordPressのタイムゾーン設定が消えていたり、PHPデフォルトタイムゾーンを上書きしている場合に表示されます。

改善方法

ダッシュボードから 「設定」 -> [一般設定」 をクリックして開きます。

一般設定のタイムゾーンを [東京] または [UTC+9] を選択して [変更を保存]してください。

エラーが解決する可能性があります。

これでも解決しない場合はプラグインや自作したプログラムの中でデフォルトタイムゾーンを上書きしている可能性があるので、可能性がありそうなところを1個ずつチェックしてください。

アクティブな PHP セッションを検出

「アクティブな PHP セッションを検出」という改善項目は、PHPのプログラムの中でセッションが作成されたのにセッションが閉じられなかった場合に表示されます。

WordPressREST API やループバックリクエストを妨害します。

改善方法

自作のプログラムの中で session_start() を使ったことがあるならそれが原因の可能性があります。session_start()を使った場合はHTTPリクエストを行う前に、session_write_close() でセッションを閉じる(終了する)ように修正してください。

思い当たる事が無い場合はインストールしたプラグインが原因の可能性がありますので、プラグインを1個ずつ無効化してチェックしてください。

1つ以上の推奨モジュールが存在しません

「1つ以上の推奨モジュールが存在しません」という改善項目は、WordPressの動作に必要なPHPのモジュールが一部インストールされていない場合に表示されます。

WordPressは処理のほとんどがサーバー上で行われています。
その為、サーバーにWordPressを完全に動作させるための機能(モジュール)がインストールされていないといけません。

自分でサーバーを構築したり、WordPress対応を謳っていないサーバーを利用した場合はこの項目が表示される可能性があります。

改善方法

項目を展開すると不足しているモジュール名が表示されるので、そのモジュールをサーバーにインストールすれば改善されます。

インストールするにはターミナル(コマンドプロンプト)を触ることになるので、初めからWordPress対応のサーバーを用意するのが一番手っ取り早い方法です。

ターミナルを使い自分でインストールしたい場合は、項目を開き、表示されているメッセージ通りに不足しているモジュール名(imagickやzip)で検索してインストールしてください。

自分でインストールした場合はインストールしたモジュールがバージョンアップされた際も自分でアップデートしなければなりません。特にimagickは脆弱性が度々報告されているプログラムなので、セキュリティアップデートもそれなりにありますので、しっかり理解した上でインストールしましょう。

「エックスサーバー」や「さくらのレンタルサーバー」などの有名なレンタルサーバーWordPress対応を謳っているサーバーはWordPressの動作環境を満たしている可能性が高いので表示されません。

デフォルトテーマを利用可能にしましょう

「デフォルトテーマを利用可能にしましょう」という改善項目は、WordPressに標準でインストールされているデフォルトテーマがインストールされていない場合に表示されます。

WordPressは有効化されているテーマで問題が発生した場合に、デフォルトテーマを使用するので、デフォルトテーマをインストールしておくことで、不測の事態に備えることが出来ます。

改善方法

管理画面から「外観」→「テーマ」をクリックします。

その後、「新規追加」をクリックし、右上の検索ボックスに「Twenty Twenty-Two」や「Twenty Twenty-One」を入力して検索するとヒットするのでインストールするとこのメッセージは消えます。

バックグラウンド更新が想定通りに動作していません

バックグラウンド更新では、現在使用しているバージョンのセキュリティアップデートがリリースされた場合に、WordPressを自動更新します。

参照: 自動バックグラウンド更新の設定

この項目は書きかけです。

WordPress.org に接続できませんでした

WordPress.org との通信は、新しいバージョンのチェックや、WordPressのコア、テーマ、プラグインのインストールとアップデートの両方に使われます。

あなたのサイトは、api.wordpress.orgでWordPress.orgにアクセスできません。

この項目は書きかけです。

ファイルアップロード

file_uploadsが0に設定されているため、サイトにファイルをアップロードできません。

ini_get()関数が無効になっています。このため一部のメディア設定を利用できません。

この項目は書きかけです。

HTTP リクエストがブロックされています

HTTPリクエストは、許可するホストなしの WP_HTTP_BLOCK_EXTERNAL定数でブロックされています。

この項目は書きかけです。

サイト訪問者へエラー表示を行う設定になっています

WordPressはデバッグモードというモードが存在しています。

デバッグモードは、エラーやサイトの障害に関する詳細情報の収集のために有効化されますが、一般に公開されているサイトに掲載すべきではない機密情報が含まれている場合があります。

値「WP_DEBUG_DISPLAY」が、WP_DEBUG で有効になっているか、設定ファイルに追加されています。これにより、サイトのフロントエンドにエラーが表示されます。

この項目は書きかけです。

サイトでループバックリクエストが完了できませんでした

ループバックリクエストは、スケジュールされたイベントを実行するために使用されます。また、テーマやプラグインの内蔵エディターがコードの安定性を確認するためにも使用されます。

この項目は書きかけです。