概要
woocommerce_gallery_full_size
は、WooCommerceプラグインで商品画像のフルサイズタイトルを変更するために使用されるフィルターフックです。このフィルタを実装することによって、商品のギャラリー画像の表示に関するカスタマイズが可能となります。一般的には、以下のような目的で使用されることが多いです:
- 商品ページのユーザーエクスペリエンス向上
- SEO対策の一環としての画像最適化
- 特定のメディアライブラリの画像サイズを調整
- テーマデザインに合わせた画像スタイルの調整
- モバイルユーザー向けの画像サイズ最適化
- 商品画像の読み込み速度向上
構文
add_filter('woocommerce_gallery_full_size', 'custom_gallery_full_size', 10, 2);
パラメータ
$full_size
: 現在のフルサイズ画像のIDまたはURL。$product
: 対象のWooCommerce製品オブジェクト。
戻り値
フィルタが適用された後の変更されたフルサイズ画像のIDまたはURL。
バージョン
- WooCommerce: 3.0以上
- WordPress: 5.0以上
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 |
サンプルコード
-
フルサイズ画像のIDを変更するサンプル
add_filter('woocommerce_gallery_full_size', function($full_size, $product) { return 'custom-image-size'; // カスタムの画像サイズ名を返す }, 10, 2);
このコードは、WooCommerceの商品ギャラリーのフルサイズ画像サイズのIDを「custom-image-size」に変更します。
-
特定の商品のフルサイズ画像URLを変更するサンプル
add_filter('woocommerce_gallery_full_size', function($full_size, $product) { if($product->get_id() === 123) { return 'https://example.com/custom-image.jpg'; // 特定商品用URL } return $full_size; }, 10, 2);
このコードは、IDが123の製品に対して特定の画像URLを返します。
-
商品タイプチェックによる画像サイズ変更
add_filter('woocommerce_gallery_full_size', function($full_size, $product) { if($product->get_type() === 'simple') { return 'large'; // 単純な商品には「large」画像を使用 } return $full_size; }, 10, 2);
こちらは、商品のタイプが「simple」の場合、フルサイズ画像を「large」に設定します。
-
画像サイズの動的変更
add_filter('woocommerce_gallery_full_size', function($full_size, $product) { return is_mobile() ? 'medium' : 'full'; // モバイルでは「medium」、それ以外は「full」 }, 10, 2);
このコードは、モバイル端末でアクセスしている場合には「medium」サイズを、それ以外のデバイスでは「full」サイズを返します。
-
カスタムメタフィールドからの画像サイズ変更
add_filter('woocommerce_gallery_full_size', function($full_size, $product) { $custom_size = get_post_meta($product->get_id(), '_custom_image_size', true); return !empty($custom_size) ? $custom_size : $full_size; // カスタムメタフィールドがあればそれを使用 }, 10, 2);
このコードは、商品に関連付けられたカスタムのメタフィールドを使用して画像サイズを変更します。メタフィールドが存在しない場合は元のサイズを返します。
引用元ページが求められているが、著作権フリーのものを提供するため直接のリンクは記載しませんが、一般的な情報源として、WooCommerceの公式ドキュメントやWordPress Codexなどがあります。