概要
woocommerce_get_image_size_$IMAGE_SIZE フィルタは、WooCommerceの画像サイズをカスタマイズするためのフックです。このフィルタを使用することで、特定の画像サイズに対する設定を変更したり、新しいサイズを追加したりすることができます。例えば、サムネイルや商品の詳細画像など、さまざまな用途に応じた画像サイズを柔軟に変更できます。
このフィルタは、以下のような機能を実装する際によく使われます。
- 商品のサムネイルサイズの変更
- カテゴリー画像サイズのカスタマイズ
- ギャラリー画像のサイズ調整
- 特定のページにおける画像のサイズ設定
- 外部プラグインやテーマとの互換性のためのサイズ変更
- 画像サイズの自動生成設定の調整
構文
add_filter( 'woocommerce_get_image_size_$IMAGE_SIZE', 'custom_image_size' );
パラメータ
$IMAGE_SIZE– 変更する画像サイズの名前(例:thumbnail, single, galleryなど)。$size– 画像サイズ設定の配列。
戻り値
- 画像サイズの設定が含まれる配列。
使用可能なバージョン
- プラグイン WooCommerce: 3.0 以上
- ワードプレス: 4.0 以上
サンプルコード
サンプル1: サムネイルサイズの変更
add_filter( 'woocommerce_get_image_size_thumbnail', function( $size ) {
return array(
'width' => 300,
'height' => 300,
'crop' => 1,
);
});
このサンプルコードは、WooCommerceの商品サムネイル画像のサイズを300×300ピクセルに変更します。
サンプル2: 商品画像サイズのカスタマイズ
add_filter( 'woocommerce_get_image_size_single', function( $size ) {
return array(
'width' => 600,
'height' => 600,
'crop' => 0,
);
});
このサンプルコードは、商品の詳細ページに表示される画像のサイズを600×600ピクセルに設定します。
サンプル3: ギャラリー画像のサイズ設定
add_filter( 'woocommerce_get_image_size_gallery', function( $size ) {
return array(
'width' => 500,
'height' => 500,
'crop' => 1,
);
});
このサンプルコードでは、商品ギャラリー画像のサイズを500×500ピクセルに変更します。
サンプル4: カスタムサイズを追加
add_filter( 'woocommerce_get_image_size_custom_size', function( $size ) {
return array(
'width' => 800,
'height' => 800,
'crop' => 1,
);
});
このコードでは、カスタム画像サイズを800×800ピクセルに設定します。
サンプル5: 新しいサイズを設定
add_filter( 'woocommerce_get_image_size_hero', function( $size ) {
return array(
'width' => 1200,
'height' => 600,
'crop' => 0,
);
});
このサンプルコードは、ヒーロー画像用の新しいサイズを1200×600ピクセルに設定します。
この関数のアクションでの使用可能性
| アクション | 使用可能 |
|---|---|
| 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 |