WordPressの「W」ファビコンとの格闘。設定したファビコンがGoogle検索結果に反映されない!(解決済み)

設定したファビコンをGoogleが認識してくれない時の対処法。解決済み

WordPressのバージョンが4.4になったあたりからソースコード表示の際、タブのファビコンがWordPressの「W」マークになっていた事に気付いてはいたのですが、Googleが自分の設定したファビコンを認識していたので、ほったらかしてました。ところが新しいサイトを立ち上げるにあたって、Googleが困ったのでしょう…なかなか指定したファビコンが表示されないなぁとは感じていたのですが最終的に「W」マークの方を検索結果に採用しちゃって難儀したので備忘録も兼ねて書いておきます。
なんでやねん!てなりました。

先に言っておくと、現状まだそのサイトはWordPressの「W」マークが検索結果に表示されてます。直ってないの…でも何となく理由がわかってきてます。これWordPressが強い意志を持って「W」アイコンをアピってるんですよね。こうなったらWordPressと僕との戦いであります。

ちゃんとhead部分でファビコンの指定はしてあるのですが、それよりも先にWを捻じ込んてきとるんですよWordPressさんは。ファビコンがWordPressマークで困ってる人は「ドメイン名/facvicon.ico」アクセスしてみてください。リダイレクトされて憎き「W」マークが表示されると思います。こいつをなんとかすればいけるんじゃね?

結論から書けよと言われそうですが自分の悪戦苦闘記録でもありますので、順番に試したことを書いておきます。

ついにWアイコンとの戦いに勝利!

その後バッチリ直りました。ただ自分の設定したファビコンに変わるまで、1ヶ月近くかかっちゃいました。おそらく後で述べるように一旦Googleがファビコン(WordPressアイコン)を見つけてしまうとなかなか修正に時間がかかるようです。気長に待つ事も大事なんですね。

試した事その1. 指定したfaviconの名前を変える

このファビコン表示問題を検索するとすぐ出てきたのが「ファビコンの名前を変更すると良い」という情報だったので早速試しました。

具体的にはfavicon.icofavicon2.icoとかに変えてGoogleにアピールする方法ですね。

ついでにファイルのバージョンを表記する?ver=1.0.2というのも入れておきましたが、これはおそらくブラウザのキャッシュに対するお知らせみたいなものだと思うので、グーグル検索結果には関係ないと思います。でも気持ちが大事ですよね。アピールできるところはしておきましょう。

favicon2.ico?ver=1.0.2"のように書いておきました。

まぁその1で解決したら良かったのですが、これでは全然ダメでした。なので、試した事その2に続きます

試した事その2. functions.phpを編集してWordPressアイコンへのリダイレクトを阻止する

これを試すまでは、Googleサーチコンソールのアイコンも「W」マークだったのですが、この処理をすることでサーチコンソールのサイトアイコンは指定したものに変わりました。希望が見えてくる感じがします。

// dfault wp icon 消す
function wp_favicon_delete(){
 exit;
}
add_action("do_faviconico", "wp_favicon_delete");

functions.phpに上記を追記するだけです。これでソースコード表示してもタブに「W」アイコンが表示されずに自分の指定したファビコンが表示されます。これで解決したんじゃね?と思っていました…でも甘かったようです。数日待てども検索結果にはWordPressマークが…

おそらくですが、サイト公開前にこの記述を書いておけばGoogleは迷う事なく指定したファビコンを表示してくれたんじゃないかと想像しています。しかし、この処理の前に一旦Googleが「W」マークを認識しちゃうとダメなのかもしれません。

試した事その3. functions.phpを編集してWordPressアイコンへのリダイレクト先を指定したいファビコンに変更する

その2で記述したfunctionを編集して自分の意図したアイコンへリダイレクトさせていきます。

上記のfunction wp_favicon_delete()ではリダイレクト処理はしないでそのままexitしちゃうので、https://ドメイン名/favicon.icoにアクセスすると真っ白な画面になります。かつてそこにアクセスすればリダイレクトされてWordPressマークが表示されていた事をGoogleは忘れないのかもしれません。

調べていると、どうやらGoogleはまずトップ階層にfaviconがいるかチェックしているらしいのです。それならばhttps://ドメイン名/favicon.icoにアクセスしてくれたGoogleに誠意をもって対応することが解決になるのではないかと考えました。

// dfault wp icon リダイレクト先を指定のサイトアイコンに変更する
function wp_favicon_delete(){
 wp_redirect( get_theme_file_uri( '/images/ico/favicon2.ico' )); //追記
 exit;
}
add_action("do_faviconico", "wp_favicon_delete");

追記した箇所のget_theme_file_uri( '/images/ico/favicon2.ico' )の箇所は指定したいファビコンへのパスに書き換えてくださいね。参考にしたサイトでは元々リダイレクトされていた「W」アイコンに合わせてpng画像を指定してありましたが、icoでも大丈夫なのか試してみます。わざわざもう一つPNG画像を用意するのが面倒だったので僕はicoファイルを指定してますが、これで様子を見てダメだったらpng画像を作ってみるつもりです。

「https://ドメイン名/favicon.ico」にアクセスして表示を確認しましたが、ちゃんと真っ白ページからリダイレクトされ指定のファビコンがブラウザに表示されています。これで数日待ってみようと思います。これが決め手になってほしいと願いつつ投稿を終了し、数日待ちましたが相変わらず検索結果ページには「W」アイコン様が鎮座してますね…なので、次の一手を打ちます。

指定するファビコン(favicon.ico)のサイズについて

Google Developersのサイトに見逃していた記述を発見しました。これはGoogle様が直々に教えてくれているページなので従わなくては!そのものずばり自分が今困っている状況にピッタリな情報だわ。

google検索結果用のファビコンサイズは48pxの倍数になっている必要があるらしい

ファビコンなんてどうせ小さく表示されるのだから、16pxと32pxくらい用意しとけば大丈夫っしょ!と思って48pxをマルチアイコンに加えてなかった。現状、サイトのアイコンは全て指定のアイコンになってますし、Google Search Consoleページでもちゃんと指定のアイコンが認識されてます。検索結果ページだけが「W」アイコンのまま指定のアイコンに変わらない状況で困ってます。

ファビコンのサイズが 48 ピクセルの倍数になっていること(例: 48 x 48 ピクセル、96 x 96 ピクセル、144 x 144 ピクセルなど)。SVG ファイルの場合は、サイズに関して特別な指定はありません。有効なファビコン形式は、すべてサポートされています。Google では画像サイズを 16 x 16 ピクセルに変換するため、その解像度で適切に表示されるか、あらかじめご確認ください。
注意: 16 x 16 ピクセルのファビコンは指定しないでください。

検索結果用にウェブサイトのファビコンを定義する | Google 検索セントラル | ドキュメント | Google Developersより

マルチアイコンに48pxを加えてfavicon.icoを作り直します。
マルチアイコン作成にはao-system.netさんを使わせてもらってます。

Google DevelopersのページにはGoogle Search Consoleからインデックス登録をリクエストせよと書いてあったので勿論やっておきます。これでどうだろう…今度こそ上手くいくのか?また数日まってみます。

ただ、気になるのが引用した文章の「注意: 16 x 16 ピクセルのファビコンは指定しないでください。」という部分。マルチアイコンに16pxサイズが含まれてても大丈夫なのかしら?

結論: functions.phpを編集してfavicon.icoのリダイレクト先を指定してやれば解決します(マルチアイコンには48pxを加えておきましょう)

この記事を書いたのが22年の10月初旬、検索結果に設定したファビコンが表示されているのを確認したのが11月の初めなので、一度WordPressアイコンをサイトのファビコンとしてGoogleに認識されちゃうと修正してから2週間から1ヶ月くらいは待つ必要があるみたいです。

リダイレクト先はpng画像ではなく、icoファイル(48pxを加えたマルチアイコン)でも大丈夫でした。自分は16px,32px,48pxで作成したマルチアイコンでしたので16pxが含まれていてもOKなことを確認できました。

僕が個人的に効果的だったと思うのは、試した事その3の「functions.phpを編集してWordPressアイコンへのリダイレクト先を指定したいファビコンに変更する」と「マルチアイコンに48pxを加える」です。

自作テーマを使ってサイトを運営している人や古いテーマを気に入って使い続けている人が僕と同じ「Wの悲劇」に見舞われるんじゃないかと想像しています。駄文で恐縮ですがこの記事が誰かの一助になれば幸いです。

追記というかぼやきです…
この隙あらばWordPressアイコンをぶっこんでくる仕様になったのはWordPressのVersion5.4かららしいです。ファビコンが設定されていないページがあればすかさず「W」アイコンを入れてくるのやめてほしいっす、ほんと…