ダウンロード機能付きの会員制サイトを制作していて、拡張子「.psd」「.ai」ファイルをWordpressのメディアにアップロードし、会員側でそのファイルをダウンロードしたいケースがありました。
メディアへ「.psd」「.ai」ファイルをアップロードすると、「セキュリティ上の理由によりこのファイル形式は許可されません」となり、デフォルトではアップロードすることが出来ません。
function.phpへの記述方法は下記です。
1 2 3 4 5 | function allow_upload_psd( $mimes ) { $mimes['psd'] = 'image/vnd.adobe.photoshop'; return $mimes; } add_filter( 'upload_mimes', 'allow_upload_psd' ); |
ググると下記の方法が多く出てくるのですが、上手くいかなかったため上記の方法でアップロードが可能でした。
Photoshopデータのバージョンでしょうか。ここでは深堀りしません。
1 2 3 4 5 | function allow_upload_psd( $mimes ) { $mimes['psd'] = 'image/x-photoshop'; return $mimes; } add_filter( 'upload_mimes', 'allow_upload_psd' ); |
function.phpへの記述方法は下記です。
1 2 3 4 5 | function upload_ai($mimes) { $mimes['ai'] = 'application/pdf'; return $mimes; } add_filter('upload_mimes', 'upload_ai'); |
<a>タグ要素に「download=””」要素を追加することで、ダウンロード用のリンクを指定することができます。
1 | <a href="○○○○" download="○○○○"></a> |
WordPress へ MIME タイプや様々なファイル拡張子を追加することができます。
適宜更新されており、WordPressのメジャーアップデートにも対応しています。
こちらでも様々なファイル拡張子を追加することができます。
しかし、1年以上更新されていないプラグインの為、無難に「WP Add Mime Types」の使用をお勧めします。
アップロード可能なファイルについて、厳密には「拡張子+mime type」で照合されています。
「WP Add Mime Types」の設定で、ファイルアップロード失敗した場合に、そのファイルの「mime type」を表示する機能がありますので、嵌った際は確認してみるのも良いです。
SD WEBWORKS代表。システム開発会社でコーディングや WordPressのカスタマイズを学び、2018年フリーランスに。200サイト以上の制作実績。WEB制作に関するお悩みがある方は、お気軽にご相談ください。
ホームページ : https://sd-webworks.com/