この記事は最後に更新してから1年以上経過しています。

favicon.icoがWordPressロゴになる!?

説明

先週「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)。

タブのタイトル横には青いWordPressロゴが表示されている

まっさらな環境にインストールした直後、そこには/favicon.icoファイルはない。その状態でブラウザで何らかのページにアクセスすると、/favicon.icoのリクエストが発生し、青いWordPressロゴファイルへリダイレクトされ、それが表示されるという流れのようだ。5.4以降で/favicon.icoファイルがない場合は、こうなることは心にとめておけばよいだろう。

なおこの仕組みは、サイトに/favicon.icoがあったり、管理画面で「サイトアイコン」を設定している場合は、/favicon.icoのリクエストが発生しないため影響を受けることはない。


最終更新 : 2020年02月25日 12:01


お勧め

the_archive_description(2018年5月27日 更新)

void the_archive_description( [ string $before = '' [ , string $after = '' ] ] )
アーカイブページの説明を表示する。

wp_localize_script(2018年5月27日 更新)

bool wp_localize_script( string $handle, string $object_name, array $l10n )
スクリプト向けの変数を追加する。

wp_is_site_protected_by_basic_auth(2021年2月5日 更新)

bool wp_is_site_protected_by_basic_auth( [ string $context = '' ] )
サイトがベーシック認証で保護されているか調べる。

get_post_time(2018年5月27日 更新)

mixed get_post_time( [ string $d = 'U' [ , bool $gmt = false [ , mixed $post = null [ , bool $translate = false ] ] ] ] )
パラメータ$dで指定されたフォーマットに従って投稿データの投稿時刻を取得する。

get_page_by_title(2018年5月31日 更新)

mixed get_page_by_title( string $page_title [ , string $output = OBJECT [ , string|array $post_type = 'page' ] ] )
指定されたタイトルの投稿情報を取得する。