概要
woocommerce_structured_data_product_offer
フィルタは、WooCommerceで生成される構造化データに製品のオファー情報を追加または変更するために使用されます。このフィルタは、検索エンジンが製品情報をより正確に理解できるようにするため、特にSEOにおいて重要です。一般的にこのフィルタは以下のような状況で使用されます:
- 製品価格をカスタマイズする。
- 期間限定のオファー情報を追加する。
- 在庫状態(在庫切れや限定在庫)を反映する。
- 製品の販売者情報をカスタマイズする。
- 製品の税率を設定する。
- アフィリエイトプログラムの情報を追加する。
構文
add_filter( 'woocommerce_structured_data_product_offer', 'custom_function_name', 10, 2 );
パラメータ
$data
:出力される構造化データの配列。$product
:対象の製品オブジェクト。
戻り値
- 修正された構造化データの配列。
WooCommerceのバージョン
このフィルタは、WooCommerce 2.1.0 以降のバージョンで使用可能です。
WordPressのバージョン
一般的にWordPress 4.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 |
サンプルコード
サンプルコード 1
add_filter( 'woocommerce_structured_data_product_offer', 'custom_price_offer', 10, 2 );
function custom_price_offer( $data, $product ) {
if ( $product->is_on_sale() ) {
$data['price'] = $product->get_sale_price();
} else {
$data['price'] = $product->get_regular_price();
}
return $data;
}
このサンプルコードは、製品がセール中の場合にはセール価格を、そうでなければ通常価格を構造化データに設定します。
(引用元は WooCommerce の公式ドキュメントなど)
サンプルコード 2
add_filter( 'woocommerce_structured_data_product_offer', 'add_shipping_info', 10, 2 );
function add_shipping_info( $data, $product ) {
$data['shipping'] = 'Free Shipping';
return $data;
}
この例では、構造化データに「送料無料」という情報を追加しています。
(引用元は WooCommerce の公式ドキュメントなど)
サンプルコード 3
add_filter( 'woocommerce_structured_data_product_offer', 'custom_stock_status', 10, 2 );
function custom_stock_status( $data, $product ) {
$data['itemCondition'] = $product->is_in_stock() ? 'new' : 'used';
return $data;
}
このサンプルは、在庫状態に応じて商品の状態を「新しい」または「中古」に設定します。
(引用元は WooCommerce の公式ドキュメントなど)
サンプルコード 4
add_filter( 'woocommerce_structured_data_product_offer', 'custom_tax_info', 10, 2 );
function custom_tax_info( $data, $product ) {
$data['tax'] = array(
'@type' => 'MonetaryAmount',
'value' => $product->get_price_including_tax(),
);
return $data;
}
ここでは、販売する商品の税金情報を構造化データに追加しています。
(引用元は WooCommerce の公式ドキュメントなど)
サンプルコード 5
add_filter( 'woocommerce_structured_data_product_offer', 'add_affiliate_info', 10, 2 );
function add_affiliate_info( $data, $product ) {
$data[' seller'] = 'Example Seller';
return $data;
}
このコードは、構造化データに販売者名を追加して、アフィリエイトマーケティングを促進します。
(引用元は WooCommerce の公式ドキュメントなど)