この記事は最後に更新してから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


お勧め

get_post_time(2018年5月27日 更新)

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

has_tag(2012年1月17日 更新)

bool has_tag( [ mixed $tag = '' [ , mixed $post = null ] ] )
投稿記事に投稿タグが付属しているか調べる。

delete_term_meta(2018年5月27日 更新)

bool delete_term_meta( int $term_id, string $meta_key [ , mixed $meta_value = '' ] )
タームのメタ情報を削除する。

wp_save_post_revision(2023年4月3日 更新)

int | WP_Error | void wp_save_post_revision( int $post_id )
現状の投稿のリビジョンを作成する。

safecss_filter_attr(2023年3月31日 更新)

string safecss_filter_attr( string $css [ , string $deprecated = '' ] )
インラインスタイルをサニタイズする。