概要
woocommerce_rest_allowed_image_mime_types
は、WooCommerce が REST API 経由で受け入れる画像 MIME タイプのリストをフィルタリングするためのフックです。このフィルタを使用することにより、特定の画像形式を許可または拒否することができます。具体的な機能としては以下のような用途が考えられます。
- 特定の画像形式のみをサポートしたい場合
- セキュリティ上の理由から特定の画像タイプをブロックしたい場合
- クライアントが利用できる画像種類を制限したい場合
- メディアライブラリへの画像アップロード時の制限を設けたい場合
- 外部アプリケーションによるREST APIの利用を制御したい場合
- 自社のビジネスルールに基づいた画像タイプの管理を行いたい場合
このフィルタは、WooCommerce バージョン 2.6 以降、WordPress バージョン 4.5 以降で使用可能です。
構文
add_filter( 'woocommerce_rest_allowed_image_mime_types', 'custom_allowed_image_mime_types' );
パラメータ
$mime_types
(配列): 許可される MIME タイプの配列。
戻り値
- (配列): 許可された MIME タイプを含む配列を返します。
サンプルコード例
サンプルコード 1: JPEG 形式のみを許可
add_filter( 'woocommerce_rest_allowed_image_mime_types', function( $mime_types ) {
return [ 'image/jpeg' ];
});
このコードは、WooCommerce REST API で JPEG 形式の画像のアップロードのみを許可します。
サンプルコード 2: GIF と PNG 形式を許可
add_filter( 'woocommerce_rest_allowed_image_mime_types', function( $mime_types ) {
return [ 'image/gif', 'image/png' ];
});
このコードは、GIF および PNG 形式の画像を 허可し、他のタイプを拒否します。
サンプルコード 3: JPEG、PNG、GIF と SVG を許可
add_filter( 'woocommerce_rest_allowed_image_mime_types', function( $mime_types ) {
$mime_types[] = 'image/svg+xml'; // SVG を追加
return $mime_types;
});
このコードでは、既存の MIME タイプに SVG タイプを追加して許可します。
サンプルコード 4: すべての画像形式を許可
add_filter( 'woocommerce_rest_allowed_image_mime_types', function( $mime_types ) {
return array_keys( wp_get_mime_types() );
});
このコードは、WordPress がサポートするすべての画像形式を許可します。
サンプルコード 5: MIME タイプの追加と削除
add_filter( 'woocommerce_rest_allowed_image_mime_types', function( $mime_types ) {
unset( $mime_types['image/bmp'] ); // BMP を削除
$mime_types[] = 'image/webp'; // WebP を追加
return $mime_types;
});
このコードは、BMP 形式を削除し、WebP 形式を追加して、カスタマイズされた MIME タイプのリストを作成します。
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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 |