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

概要

woocommerce_structured_data_context フィルタは、WooCommerceにおいて構造化データをカスタマイズするためのフックです。構造化データは、検索エンジンに商品情報を正確に伝えるために重要です。このフィルタを使用することで、企業はページに表示される商品の情報を柔軟に調整することができます。一般的に以下のような機能を実装する際に使用されることが多いです:

  1. 商品の価格設定
  2. 商品の在庫状況の管理
  3. 商品の評価を表示する
  4. カスタムフィールドの追加
  5. 複数の商品の情報の統合
  6. SEO向けのデータ強化

構文

add_filter('woocommerce_structured_data_context', 'custom_function', 10, 2);

パラメータ

  • $context: 現在の構造化データのコンテキスト。
  • $product: WooCommerceの商品オブジェクト。

戻り値

  • 変更した構造化データ(配列)。

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

  • WooCommerce 3.0以降

ワードプレスのバージョン

  • 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_context', function($context, $product) {
    $context['availability'] = $product->is_in_stock() ? 'InStock' : 'OutOfStock';
    return $context;
});

サンプル2: 商品のブランド情報を追加

このコードは、商品のブランド情報を構造化データに含めます。

add_filter('woocommerce_structured_data_context', function($context, $product) {
    $context['brand'] = get_the_terms($product->get_id(), 'product_brand')[0]->name;
    return $context;
});

サンプル3: 評価の追加

このコードは、商品の評価を構造化データに追加します。

add_filter('woocommerce_structured_data_context', function($context, $product) {
    $context['aggregateRating'] = [
        '@type' => 'AggregateRating',
        'ratingValue' => (float) $product->get_average_rating(),
        'reviewCount' => (int) $product->get_review_count()
    ];
    return $context;
});

サンプル4: 商品の販売開始日を設定

このコードは、商品の販売開始日を構造化データに含めます。

add_filter('woocommerce_structured_data_context', function($context, $product) {
    $context['releaseDate'] = $product->get_date_created()->date('c'); 
    return $context;
});

サンプル5: おすすめ商品の情報を追加

このコードは、商品のおすすめ情報を追加します。

add_filter('woocommerce_structured_data_context', function($context, $product) {
    if ($product->is_on_sale()) {
        $context['isRecommended'] = true;
    }
    return $context;
});

各サンプルコードは、WooCommerceの商品に関連する情報を適切な構造化データ形式で追加する方法を示しています。これにより、検索エンジンでの商品の可視性を向上させることが可能です。

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


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