WordPressにFavicon.icoをアップロード出来ない Sorry, this file type is not permitted for security reasons.

WordPress

このたび、WordPressにFavicon.icoをアップロードしようとすると

Sorry, this file type is not permitted for security reasons.

というエラーが表示されてしまいました。

原因を調べてみました。

スポンサーリンク
スポンサーリンク

Favicon.ico (ファビコンアイコン) とは

Favicon.icoとは、WEBサイトのシンボルとして配置するアイコンのことです。

16x16ピクセル
32x32ピクセル
48x48ピクセル

のサイズがサポートされているようです。

このアイコンをウェブサイトで設定していないと、ウェブブラウザではタイトルの左側がブラウザのデフォルトのアイコンで表示されます。

私のようなIT技術者から見れば、Favicon.icoが設定されていないウェブサイトを見ると「手が込んでいないな」と感じてしまいます。

ちなみに、Faviconとは英語のFavaroite(大好き)からきています。

ApacheではFavicon.icoが設定されていないと、error_logに以下のようなエラーが表示されます。

私が初めてApacheでWEBサーバーを立てたころをこのエラーの意味ががよくわからずに困ったことがありました。

個人的な意見ではWEBサーバーとしては動作に支障がないので、エラーではなく単に警告として表示する方がよいのではないかと思います。

Favicon.ico (ファビコンアイコン) の作り方

Favicon.icoはマイクロソフトが開発したicoフォーマットで作成します。

GIMPなどのフリーな画像作成ファイルで作成可能ですが、Windows付属のペイントでビットマップを作成しておけば拡張子を「.bmp」→「.ico」に変更するだけでアイコンになります。

以下のような便利なサイトもあります。

favicon.ico Generator

http://www.favicon.cc/

ファビコン

このサイトを利用すれば16x16ピクセルのアイコンを直接ブラウザ上で作成することが可能です。

WordPressでFavicon.icoをアップロードするとSorry, this file type is not permitted for security reasons.

ところで、WordPressでFavicon.icoをアップロードしようとすると

Sorry, this file type is not permitted for security reasons.

となってしまいました。

ファビコン

調査したところ、WordPressではセキュリティ上の理由で、以下のファイルしかアップロードできないようです。

アップロードできるファイルとその拡張子

Images
.jpg
.jpeg
.png
.gif

Documents
.pdf (Portable Document Format; Adobe Acrobat)
.doc, .docx (Microsoft Word Document)
.ppt, .pptx, .pps, .ppsx (Microsoft PowerPoint Presentation)
.odt (OpenDocument Text Document)
.xls, .xlsx (Microsoft Excel Document)
.zip (Compressed Folder)

Audio
.mp3
.m4a
.ogg
.wav

Video
.mp4, .m4v (MPEG-4)
.mov (QuickTime)
.wmv (Windows Media Video)
.avi
.mpg
.ogv (Ogg)
.3gp (3GPP)
.3g2 (3GPP2)

解決策として以下の2つの方法があります。

一つ目は、すべてのファイルをアップロードできるようにする方法です。

やり方は以下の通りです。

wp-config.phpに以下の行を追加する。

簡単ですが、これはお勧めできません。

これだとどんな形式のファイルでもアップロードすることが可能となるので制御することができなくなってしまうからです。

二つ目は、テーマのfunctions.phpを変更する方法です。

この方法だとアップロード可能なファイルを制御することができて、より洗練された方法と言えるでしょう。

こちらの方法で16x16ピクセルのicoファイルをアップロードする方法は可能となりました。

ところが、いざ表示させようとしてもWordPressからはプレビューできません。。?

仕方がないので、48x48ピクセルのpngファイルをアップロードするとちゃんと描画できるではありませんか。。

うーん、いまいち納得できないけれど、解決したということで良しとしました。

WordPressのおすすめ本

↓WordPressのおすすめ本はコチラ
WordPressのおすすめ本