2026年7月14日
2026年7月14日
WordPressの管理画面のフッターテキストを変更する方法(admin_footer_text・update_footer)
WordPress の管理画面の最下部に出る文字は、左側を admin_footer_text、右側(バージョン表記)を update_footer という2つのフィルターフックで変更できます。コードは子テーマの functions.php か、テーマに依存しない mu-plugin に数行書くだけです。この記事では、両フックの違い、そのまま使えるコード例、特定の画面だけ変える方法、出力のエスケープや優先度の注意点を説明します。
管理画面フッターの構造
管理画面(ダッシュボードや投稿一覧など)の下端には、通常2つのテキストが表示されています。
- 左側:WordPress を使っていることへのお礼の文章と、WordPress.org へのリンク
- 右側:WordPress のバージョン番号。更新がある場合は、管理者には更新を促すリンクが表示される
この2つは別々のフィルターを通して出力されています。左側が admin_footer_text、右側が update_footer です。どちらもフィルターなので、受け取った文字列を書き換えて返せば表示が変わります。
クライアントに納品するサイトで「制作会社名と問い合わせ先を出したい」、社内サイトで「運用ルールのページへのリンクを置きたい」といった用途でよく使われます。
なお、ここで変わるのは管理画面だけです。サイトの訪問者が見るフロント側のフッターは、テーマのテンプレートやフッター用のテンプレートパーツで管理されており、このフックとは関係ありません。また、ブロックエディターの編集画面のように、管理画面フッター自体が表示されない画面もあります。
コードを書く場所
コードの置き場所は、次の2つのどちらかを選びます。
- 子テーマの functions.php:手軽だが、テーマを切り替えると効果がなくなる。親テーマの functions.php に書くと、テーマ更新で消える
- mu-plugin(Must-Use プラグイン):
wp-content/mu-plugins/に PHP ファイルを置くと、有効化の操作なしで常に読み込まれる。テーマに依存しない設定に向いている
管理画面のフッターはテーマの見た目とは関係のない「サイト運用の設定」なので、テーマ変更に左右されない mu-plugin のほうが管理しやすいでしょう。mu-plugins フォルダが無ければ作成します。どちらの場合も、編集前にファイルのバックアップを取り、構文エラーで管理画面に入れなくなったときに FTP などで元に戻せるようにしておいてください。
左側のテキストを変える(admin_footer_text)
wp-content/mu-plugins/admin-footer.php として、次のファイルを作成します。
<?php
/**
* Plugin Name: Admin Footer Text
* Description: 管理画面フッターの左側のテキストを変更する。
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
add_filter( 'admin_footer_text', 'myprefix_admin_footer_text', 20 );
function myprefix_admin_footer_text( $text ) {
$support_url = 'https://example.com/support/';
return sprintf(
'%1$s <a href="%2$s" target="_blank" rel="noopener">%3$s</a>',
esc_html( '運用に関するお問い合わせは' ),
esc_url( $support_url ),
esc_html( 'サポート窓口へ' )
);
}
ポイントは3つあります。
1つ目はエスケープです。フィルターの戻り値はそのまま HTML として出力されるため、文字列は esc_html()、URL は esc_url() を通してから組み立てます。固定の文字列だけなら問題は起きにくいものの、後から設定画面の値やオプションを差し込むように改修したときに、エスケープ漏れがそのまま脆弱性になります。最初から通しておく習慣をつけてください。リンク以外のタグも含めたい場合は、wp_kses_post() で許可されたタグだけを残す方法もあります。
2つ目は優先度です。WooCommerce など一部のプラグインは、自分の設定画面で同じ admin_footer_text を使って独自の文言を出しています。優先度を標準の10より大きい値(ここでは20)にしておくと、後から実行されて上書きしやすくなります。逆に、プラグインの画面では元の表示を残したい場合は、次の章のように画面を限定してください。
3つ目は関数名の接頭辞です。myprefix_ の部分はサイト固有の名前に変え、他のプラグインやテーマの関数と名前が衝突しないようにします。
右側のバージョン表記を変える(update_footer)
右側は WordPress コアが update_footer に core_update_footer() を優先度10で登録し、バージョン番号や更新案内を出しています。この関数は受け取った値を使わずに自分の文字列を返すため、書き換えたい場合は優先度を11以上にして、コアの処理の後で上書きします。
add_filter( 'update_footer', 'myprefix_update_footer', 11 );
function myprefix_update_footer( $content ) {
// 更新権限のあるユーザー(通常は管理者)には、従来どおりバージョンと更新案内を表示する
if ( current_user_can( 'update_core' ) ) {
return $content;
}
return esc_html( '制作・保守:Example株式会社' );
}
この例では、管理者には元の表示を残し、編集者などそれ以外のユーザーには別の文字を表示しています。右側を空にしたいだけなら、return ''; とします。
管理者からも更新案内を消すと、コアの更新に気づくきっかけが一つ減ります。更新を通知で管理している場合を除き、管理者向けの表示は残すことをおすすめします。また、ここでバージョン表記を消しても、バージョンはほかの経路からも推測できるため、セキュリティ対策としての効果は限定的です。更新を適用し続けることのほうが重要です。
特定の画面だけ変える(get_current_screen)
ダッシュボードだけに案内を出したい、といった場合は、get_current_screen() で現在の管理画面を判定します。
add_filter( 'admin_footer_text', 'myprefix_dashboard_footer_text', 20 );
function myprefix_dashboard_footer_text( $text ) {
$screen = function_exists( 'get_current_screen' ) ? get_current_screen() : null;
// ダッシュボード以外では元のテキストをそのまま返す
if ( ! $screen || 'dashboard' !== $screen->id ) {
return $text;
}
return esc_html( '更新作業の前には、運用マニュアルのバックアップ手順を確認してください。' );
}
$screen->id には、ダッシュボードなら dashboard、投稿一覧なら edit-post、一般設定なら options-general のような値が入ります。目的の画面の ID が分からない場合は、一時的に error_log( $screen->id ); を入れてデバッグログで確認すると早いです。確認が終わったらログ出力は削除してください。
判定に失敗したときは受け取った $text を返す、という書き方にしておくと、想定外の画面で表示が消える事故を防げます。
反映されないときの確認
- ファイルの場所:mu-plugin は
wp-content/mu-plugins/直下に置く。サブフォルダの中の PHP は自動では読み込まれない - 読み込まれているか:管理画面の「プラグイン」一覧にMust-Use(日本語表示では「使用必須」など)の絞り込みリンクが表示され、そこにファイルが並んでいるかを確認する
- 優先度:別のプラグインが後から上書きしていないか。優先度を上げて試す
- 見ている画面:フッターが表示されない編集画面で確認していないか。ダッシュボードなどで確認する
上記のフィルター名と出力位置は以前から変わっていません(2026年10月現在)。それでも、WordPress を大きく更新した後は一度表示を確認しておくと安心です。
まとめ
- 管理画面フッターの左側は
admin_footer_text、右側のバージョン表記はupdate_footerで変更する - コードはテーマに依存しない mu-plugin か、子テーマの functions.php に置く
- 出力は
esc_html()・esc_url()でエスケープし、関数名には接頭辞を付ける update_footerはコアが優先度10で使っているため、11以上で上書きする。管理者向けの更新案内は残すのが無難- 画面を限定するときは
get_current_screen()の ID で判定し、それ以外は元の値を返す