この記事は最後に更新してから1年以上経過しています。
説明
先週「WordPress 5.4 Beta2」が公開され、来月末には正式リリース。タイミングよく三連休だったので、1つ前の「ニュース」で紹介されていた変更点から確認してみた。
ニュースの冒頭内容から「ブロックエディターが便利になりそうだな」と思いつつ読み続けていくと「Better favicon handling」の項目がちょっと気になった。
ソースコードから関連しそうな関数やアクションを探してみると、2つの関数が見つかる。
function is_favicon()
function do_favicon()
is_favicon関数は、リクエストに応じたテンプレートの割り振りを行う/wp-includes/template-loader.phpで使用されており、リクエストがfavicon.icoが調べるもの。template-loader.phpではリクエストがfavicon.icoの場合にdo_faviconアクションを実行するコードが追加されていた。
do_faviconアクションは、/wp-includes/default-filters.phpで登録されており、そのコールバックにはdo_favicon関数が指定されていた。do_favicon関数では、do_faviconicoアクションを実行した後で、青いWordPressロゴファイル(/wp-admin/images/w-logo-blue.png)へリダイレクトしていた。
実際に5.4 Beta2を新規にインストールしてみた。ブラウザのタブにはこれまでのWordPressをインストールした場合と異なって青いWordPressロゴが表示されている(以下はWindows版Chrome)。
まっさらな環境にインストールした直後、そこには/favicon.icoファイルはない。その状態でブラウザで何らかのページにアクセスすると、/favicon.icoのリクエストが発生し、青いWordPressロゴファイルへリダイレクトされ、それが表示されるという流れのようだ。5.4以降で/favicon.icoファイルがない場合は、こうなることは心にとめておけばよいだろう。
なおこの仕組みは、サイトに/favicon.icoがあったり、管理画面で「サイトアイコン」を設定している場合は、/favicon.icoのリクエストが発生しないため影響を受けることはない。
最終更新 : 2020年02月25日 12:01
関連
お勧め
the_author(2018年5月27日 更新)
human_readable_duration(2019年2月22日 更新)
get_header(2020年8月18日 更新)
the_post_thumbnail(2018年5月27日 更新)
get_lastpostdate(2020年8月28日 更新)