概要
woocommerce_structured_data_order
フィルタは、WooCommerceで生成される構造化データの「注文」情報をカスタマイズするために使用されます。これにより、検索エンジンや他のクライアントがより良い情報を取得できるようにデータを調整することができます。このフィルタは、構造化データマークアップを拡張する際に、具体的な情報を追加したり、既存の情報を変更したりするのに役立ちます。
このフィルタは、以下のような機能を実装する際によく使用されます。
- 構造化データのカスタマイズ
- SEOの最適化
- ひな形ツールによるデータ編集
- プロモーション情報の追加
- 商品のレビューと評価情報の強化
- 特定のビジネスニーズに応じたデータフィールドの拡張
構文
add_filter( 'woocommerce_structured_data_order', 'my_custom_order_structured_data', 10, 2 );
パラメータ
$data
(array): 既存の構造化データ情報が含まれる配列。$order
(WC_Order): 変更が加えられる特定の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_order', 'custom_woocommerce_order_data' );
function custom_woocommerce_order_data( $data, $order ) {
$data['price'] = 100; // 価格を100に設定
return $data;
}
引用元: WooCommerce公式ドキュメント
サンプル2: カスタムプロモーション情報の追加
このコードは、注文明細にプロモーション情報を追加する方法を示しています。
add_filter( 'woocommerce_structured_data_order', 'add_promotion_data_to_order' );
function add_promotion_data_to_order( $data, $order ) {
$data['promotion'] = '10% off on next purchase'; // プロモーション情報を追加
return $data;
}
引用元: WooCommerce公式ドキュメント
サンプル3: 追加属性の追加
この例では、構造化データにカスタム属性を追加します。
add_filter( 'woocommerce_structured_data_order', 'add_custom_attribute_to_order' );
function add_custom_attribute_to_order( $data, $order ) {
$data['custom_attribute'] = 'Value here'; // カスタム属性を追加
return $data;
}
引用元: WooCommerce公式ドキュメント
サンプル4: 注文の発行日情報の修正
発行日の情報をカスタマイズする例です。
add_filter( 'woocommerce_structured_data_order', 'modify_order_issue_date' );
function modify_order_issue_date( $data, $order ) {
$data['dateIssued'] = $order->get_date_created()->date('Y-m-d'); // 発行日を整理
return $data;
}
引用元: WooCommerce公式ドキュメント
サンプル5: カスタムレビュー情報の追加
このコードサンプルは、カスタムレビュー情報を構造化データに追加します。
add_filter( 'woocommerce_structured_data_order', 'add_review_data_to_order' );
function add_review_data_to_order( $data, $order ) {
$data['review'] = 'Great product!'; // レビューを追加
return $data;
}
引用元: WooCommerce公式ドキュメント