• Home
  • Craft CMS
  • Craft CMS のアセットフィールドでファビコン(.ico)をアップロードできな場合の対処方法

Craft CMS のアセットフィールドでファビコン(.ico)をアップロードできな場合の対処方法

Craft CMS のアセットフィールドでは、デフォルトの状態では .ico の拡張子のファイルはアップロードできません。

asset-icon-error-min.png

アップロードできるファイルの種類は general.phpallowedFileExtensions で定義できるのですが、この初期値が、

'7z, aiff, asf, avi, bmp, csv, doc, docx, fla, flv, gif, gz, gzip, htm, html, jp2, jpeg, jpg, jpx, js, mid, mov, mp3, mp4, m4a, m4v, mpc, mpeg, mpg, ods, odt, ogg, ogv, pdf, png, potx, pps, ppsm, ppsx, ppt, pptm, pptx, ppz, pxd, qt, ram, rar, rm, rmi, rmvb, rtf, sdc, sitd, svg, swf, sxc, sxw, tar, tgz, tif, tiff, txt, vob, vsd, wav, webm, wma, wmv, xls, xlsx, zip'

となっているために .ico がアップロードできないのです。

したがって、 .ico をアップロードできるようにするには、この初期値に ico を追加して general.php に定義してあげます。この値はドットの除いた拡張子を「カンマ+スペース」で区切って追加します。

'allowedFileExtensions' => '7z, aiff, asf, avi, bmp, csv, doc, docx, fla, flv, gif, gz, gzip, htm, html, jp2, jpeg, jpg, jpx, js, mid, mov, mp3, mp4, m4a, m4v, mpc, mpeg, mpg, ods, odt, ogg, ogv, pdf, png, potx, pps, ppsm, ppsx, ppt, pptm, pptx, ppz, pxd, qt, ram, rar, rm, rmi, rmvb, rtf, sdc, sitd, svg, swf, sxc, sxw, tar, tgz, tif, tiff, txt, vob, vsd, wav, webm, wma, wmv, xls, xlsx, zip, ico',

もちろんこれを機会に、上記の値を必要なものだけに絞って設定してしまってもいいでしょう。

なお、ここで ico を追加したとしても、フィールドの設定で、 Restrict allowed file types? にしてあるとダメなので注意しましょう。

asset-ico-min.png

以上です。