悪あがきプログラマー

悪あがきを続けていきたい技術と書評なブログです。トレタでiOSエンジニアやってます。

jugemブログでfaviconを表示する方法(JavaScriptは使わずに)

jugemブログは自分でfaviconを設定してもデフォルトのfaviconで上書きされてしまう。詳細はこちらのブログを参照。
ファビコンの表示やOGP対策に今までJUGEMブログで設定していたこと | My First JUGEM Template!

このブログの様にJavaScriptで消してやろうと思っていたのだが、途中でおかしな事に気づいた。

この一文が邪魔なわけだが、

<link rel="shortcut icon" href="http://imaging.jugem.jp/portal/img/favicon.ico" />

JavaScriptで上記リンクを削除するコードを書いていたところ、そもそもサーバから上記リンクが出力されなくなったのだ。

!?

全く意味が分からず、色々と試しているとどうも"shortcut icon"という文字列があると、出力されなくなっているらしい。もしかして、、

これは仮説だが、rel="shortcut icon"のリンクがあるかどうかを見て無ければ出力するようにしてるんじゃないだろうか。ただ、その実装が手抜きで"shortcut icon"という文字列の存在可否だけみているのでは。。

もしユーザーが自分でfaviconを設定していればjugemブログデフォルトのfaviconを出さない、という気遣いがあるのかもしれない。でもちょっと待ってくれ。jugemブログには.icoファイルをアップロード出来ない。。どうせやるならそこまで対応して欲しいところだ。

結局のところこんな感じで落ち着いた。

<link rel="shortcut icon" href="http://imaging.jugem.jp/portal/img/favicon.ico" />
<link rel="icon" href="http://xxx/image.jpg" type="image/jpg" />

1行目は"shortcut icon"という文字列を書きたいためだけに書いている。ぶっちゃけ中身はなんでも良いが一応デフォルトに合わせておいた。
2行目で実際に表示したいfaviconを設定している。.icoではなく、jugemにアップロードしたファイルを指定している。

さて、faviconはなんとかなったがスマホ向けのウェブクリップアイコンはどうにもならない(htmlいじれるところが無い。。)のでなんとか設定できるようにしてください中の人。