プラグインWooCommerceのwoocommerce_downloadable_file_allowed_mime_typesフィルタの使用方法・解説

概要

woocommerce_downloadable_file_allowed_mime_typesは、WooCommerceのフィルターフックの一つで、ダウンロード可能な商品に対して許可されているMIMEタイプをカスタマイズするために使用されます。このフィルターを使用すると、特定のファイルタイプを商品に追加したり、逆に非表示にしたりすることが可能です。以下のような状況でよく使われます。

  1. 特定のファイル形式(例:.epubや.mobi)を許可したい場合
  2. セキュリティ上の理由から不必要なファイル形式(例:.exeなど)を禁止したい場合
  3. 自社特有のファイルタイプをダウンロード可能にしたい場合
  4. ユーザーが誤って不適切なファイルをアップロードするのを防ぎたい場合
  5. サードパーティのプラグインと連携するためにMIMEタイプを調整したい場合
  6. 特定の業界標準に合わせたファイル形式を扱いたい場合

構文

add_filter( 'woocommerce_downloadable_file_allowed_mime_types', 'custom_downloadable_file_types' );

function custom_downloadable_file_types( $mimes ) {
    // ここでMIMEタイプを変更する
    return $mimes;
}

パラメータ

  • $mimes : 現在許可されているMIMEタイプの配列

戻り値

  • 許可されているMIMEタイプの変更された配列

使用可能なプラグインWooCommerceのバージョン

  • WooCommerce 2.0以上

使用可能なワードプレスのバージョン

  • WordPress 4.0以上

サンプルコード

サンプルコード1

add_filter( 'woocommerce_downloadable_file_allowed_mime_types', 'allow_custom_mime_types' );

function allow_custom_mime_types( $mimes ) {
    $mimes['json'] = 'application/json'; // JSONファイルを許可
    return $mimes;
}

このサンプルコードは、ダウンロード可能なファイルとしてJSONファイルを許可します。

サンプルコード2

add_filter( 'woocommerce_downloadable_file_allowed_mime_types', 'remove_exe_mime_type' );

function remove_exe_mime_type( $mimes ) {
    unset( $mimes['exe'] ); // EXEファイルを禁止
    return $mimes;
}

このサンプルコードは、セキュリティ上の理由からEXEファイルのアップロードを禁止します。

サンプルコード3

add_filter( 'woocommerce_downloadable_file_allowed_mime_types', 'add_pdf_and_epub' );

function add_pdf_and_epub( $mimes ) {
    $mimes['epub'] = 'application/epub+zip'; // EPUBファイルを許可
    $mimes['pdf']  = 'application/pdf'; // PDFファイルを許可
    return $mimes;
}

このサンプルコードは、PDFとEPUBファイルをダウンロード可能にするためにMIMEタイプに追加します。

サンプルコード4

add_filter( 'woocommerce_downloadable_file_allowed_mime_types', 'custom_video_mime_types' );

function custom_video_mime_types( $mimes ) {
    $mimes['mp4'] = 'video/mp4'; // MP4ビデオファイルを許可
    return $mimes;
}

このサンプルコードは、MP4動画ファイルのダウンロードを許可します。

サンプルコード5

add_filter( 'woocommerce_downloadable_file_allowed_mime_types', 'allow_custom_file_extension' );

function allow_custom_file_extension( $mimes ) {
    $mimes['gif'] = 'image/gif'; // GIFファイルを許可
    return $mimes;
}

このサンプルコードは、GIFファイルをダウンロード可能ファイルとして許可します。

この関数のアクションでの使用可能性

アクション 使用例
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

この関数について質問する


上の計算式の答えを入力してください