WordPress管理画面サイトヘルスの情報タブに独自の情報を追加する実装方法(サンプルコード付き)

みなさんこんにちは!エンジニアの高澤です!
今回は、WordPress管理画面サイトヘルスの情報タブに独自の情報を追加する実装方法について解説していきたいと思います。
内容的には非常にニッチかと思いますが、例えば、Advanced Custom Fields (ACF)などプラグインで実装されていたりと見かけたりするので、必要になった時に今回の内容は役に立つかと思います。
本格的なテーマやプラグインを開発する時に便利かと思いますので、ぜひ当記事をお仕事などにご活用いただけましたら幸いです。
サイトヘルスとは
WordPressの「サイトヘルス」は、サイトのパフォーマンスやセキュリティに関する診断を行う機能です。管理画面の 「ツール」→「サイトヘルス」 からアクセスでき、サイトの問題点や最適化の提案を確認できます。

このサイトヘルスには 「ステータス」 と 「情報」 の2つのタブがあり、「ステータス」 では改善が必要な項目のチェック結果を確認でき、「情報」 ではサイトの詳細な環境情報を一覧で確認できます。
特に「情報」タブは、テーマ・プラグインの情報、サーバー環境、データベースの状態などを詳細に表示し、開発者や管理者がトラブルシューティングやサイト管理を行う際に役立ちます。
当記事では、この「情報」タブに独自の情報を追加する方法を解説します。サイト固有の情報を表示することで、管理やトラブルシューティングをよりスムーズに行うことが可能になります。
サイトヘルスに独自の項目を追加する実装方法
それでは、サイトヘルスに独自の項目を追加する実装方法について解説いたします。
まずは以下のコードをfunctions.phpにコピー&ペーストしてください。
<?php
function add_custom_site_health_info($info) {
$info['custom_section'] = array(
'label' => 'カスタム情報',
'fields' => array(
'custom_field_1' => array(
'label' => '独自のフィールド1',
'value' => 'これはカスタム情報のサンプルです。',
),
'custom_field_2' => array(
'label' => '現在のテーマ',
'value' => wp_get_theme()->get('Name'),
),
'custom_field_3' => array(
'label' => 'PHP バージョン',
'value' => phpversion(),
),
),
);
return $info;
}
add_filter('debug_information', 'add_custom_site_health_info');
ペースト後、サイトヘルス画面を表示していただくと、下図のように「情報」タブの一番下に「カスタム情報」という項目名が追加されているのが確認できるかと思います。

クリックして開いていただくと、下図のようにコードで記述した内容が表示されているかと思います。

これで実装は完了です。お疲れ様でした!
あとはご自身のお好きなようにコードをカスタマイズしていただければと思います。
サンプルコードの解説(debug_informationフック)
サンプルコードの解説をいたします。
サンプルコードについてどのような法則性を持って記述すればいいのか、一部の記述がどう機能しているのかを把握することで応用することは容易かと思いますので、ぜひここで理解しておきましょう。
以下に先ほどのコードを再度掲載いたします。
<?php
function add_custom_site_health_info($info) {
$info['custom_section'] = array(
'label' => 'カスタム情報',
'fields' => array(
'custom_field_1' => array(
'label' => '独自のフィールド1',
'value' => 'これはカスタム情報のサンプルです。',
),
'custom_field_2' => array(
'label' => '現在のテーマ',
'value' => wp_get_theme()->get('Name'),
),
'custom_field_3' => array(
'label' => 'PHP バージョン',
'value' => phpversion(),
),
),
);
return $info;
}
add_filter('debug_information', 'add_custom_site_health_info');
まずWordPressの「サイトヘルス」ページに独自の情報を追加するには、debug_informationフィルターフックを利用することで、サイトヘルスの情報タブに独自の情報データを追加できます。
debug_informationフックについて詳しく知りたい方は、以下のWordPress公式ページからご確認いただけますので、よろしければご活用ください。
このフィルターフックは、WordPressがサイトの環境情報を収集する際にフックされるものであり、開発者が任意の情報を追加できるようになっています。
独自の定義したadd_custom_site_health_info()関数内では、サイトヘルス情報に新しいセクションを定義し、配列を使用してデータを構成しています。このとき、配列のキーには任意の識別名を設定し、「label」でセクションの名称を指定します。
その配下に 「fields」配列を定義し、各項目のキー、ラベル、値をセットします。こうすることで、サイトヘルスの情報タブに独自の情報を追加することが可能になります。
データの取得には、適切なWordPress関数(テンプレートタグ)やPHPの組み込み関数を用いることが推奨されます。
たとえば、wp_get_theme()->get(‘Name’)を使用すれば現在有効なテーマ名を取得でき、phpversion()関数を用いればサーバーのPHPバージョンを取得できます。これらの値は、サイトの管理者が環境を把握するために有用な情報となります。
また、セキュリティや可読性の観点から、不要な情報を追加しすぎないことも大切です。サイトヘルスの情報タブは、管理者がサイトの状態を迅速に確認するためのものなので、必要な情報に絞って整理することで、より有用な機能として活用できます。
最後に、add_filter(‘debug_information’, ‘add_custom_site_health_info’);のように適切なフィルターフックを用いて関数を追加することで、WordPressのコアの動作を変更することなく、安全かつ拡張性の高い方法で機能を追加できます。
これにより、テーマやプラグインの更新時にも安定して動作するカスタマイズが実現できます。
まとめ
今回解説した 「WordPress管理画面のサイトヘルス情報タブに独自の情報を追加する方法」 は、ニッチな内容ではありますが、特定のプラグインやテーマ開発の際に役立つ知識です。
特に Advanced Custom Fields(ACF) などのプラグインでも類似の実装が見られるように、カスタム情報の追加は便利な機能の一つです。本格的なテーマやプラグインを開発する際に活用できるため、必要になったときにぜひ参考にしてみてください。
今回の内容が、WordPress開発やお仕事でのカスタマイズに少しでもお役に立てれば幸いです。
お気軽に皆さんのご要望をお聞かせください!
どんなに些細なことでも構いません!よろしければ記事や当サイトへの「こんな記事があったら仕事とかで役に立つな〜」や「こうだったらもっと役に立つのに!」といったようなご要望等をお気軽にお聞かせください!今後のサービス改善にお役立てさせていただきます!
例1)Reactの技術記事を書いてほしい!
例2)WordPressの使い方とかを初心者向けに解説してほしい!...など