概要
woocommerce_structured_data_review
フィルタは、WooCommerceの商品レビューに関する構造化データをカスタマイズするために使用されます。このフィルタを利用することで、レビューのデータを変更したり、追加の情報を提供したりすることができます。以下のような機能を実装する際に役立ちます。
- 商品レビューの評価スコアのカスタマイズ
- レビューの作成日や更新日のフォーマット変更
- ユーザーによるレビューの数の表示
- 特定のユーザーのレビューを強調表示
- 商品のレビュー情報をSEOに最適化
- 様々なデータソースからレビュー情報を統合
構文
add_filter('woocommerce_structured_data_review', 'custom_function_name', 10, 2);
パラメータ
$data
– 構造化データの配列$product
– 現在の商品のオブジェクト
戻り値
このフィルタは変更された構造化データの配列を返します。
使用可能なプラグインWooCommerceのバージョン
WooCommerce 3.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_review', 'adjust_review_rating', 10, 2);
function adjust_review_rating($data, $product) {
if ($data['aggregateRating']['ratingValue'] < 3) {
$data['aggregateRating']['ratingValue'] = 3; // スコアを最低3に設定
}
return $data;
}
引用元: https://woocommerce.com
サンプル2: レビューの日付フォーマット変更
このサンプルコードでは、レビューの日付フォーマットを変更する方法を示しています。
add_filter('woocommerce_structured_data_review', 'change_review_date_format', 10, 2);
function change_review_date_format($data, $product) {
foreach ($data['review'] as &$review) {
$review['datePublished'] = date('Y-m-d', strtotime($review['datePublished'])); // YYYY-MM-DD形式に
}
return $data;
}
引用元: https://woocommerce.com
サンプル3: ユーザーによるレビューの数の表示
このサンプルでは、ユーザーによるレビューの数を構造化データに追加します。
add_filter('woocommerce_structured_data_review', 'add_user_review_count', 10, 2);
function add_user_review_count($data, $product) {
$data['aggregateRating']['reviewCount'] = count($product->get_reviews()); // レビュー数を追加
return $data;
}
引用元: https://woocommerce.com
サンプル4: 特定のレビューを強調表示
特定のレビューを強調表示するために、構造化データに特別なフラグを追加します。
add_filter('woocommerce_structured_data_review', 'highlight_specific_review', 10, 2);
function highlight_specific_review($data, $product) {
foreach ($data['review'] as &$review) {
if ($review['author'] === '特定のユーザー名') {
$review['isBest'] = true; // 強調表示フラグを追加
}
}
return $data;
}
引用元: https://woocommerce.com
サンプル5: SEO最適化のためのデータ統合
このサンプルコードでは、他のデータソースからレビュー情報を統合してSEOに役立てます。
add_filter('woocommerce_structured_data_review', 'integrate_external_review_data', 10, 2);
function integrate_external_review_data($data, $product) {
$external_reviews = get_external_reviews($product->get_id()); // 外部レビュー取得関数
$data['review'] = array_merge($data['review'], $external_reviews); // 統合
return $data;
}
引用元: https://woocommerce.com
以上のサンプルコードは、woocommerce_structured_data_review
フィルタを使って、WooCommerceの商品レビューに関連したさまざまなカスタマイズを行う方法を示しています。これにより、サイトのユーザー体験やSEOを向上させることができます。