非推奨の woocommerce_add_order_item_meta フック: 最新の代替品
注文アイテムにカスタム メタデータを追加するために使用される非推奨の woocommerce_add_order_item_meta フックは、開発者の間で懸念を引き起こしています。 。幸いなことに、WooCommerce は、このニーズを満たす代替ソリューションを導入しました。
2017/2018 ソリューション: CRUD セッターとゲッターの活用
Woocommerce 3 の導入により、CRUD setter メソッドと getter メソッドは、WooCommerce でデータを操作する効率的な方法を提供します。推奨される置換フックは次のとおりです:
このフックは、注文商品、カート商品キー、値などの関連データへのアクセスを提供します。 、および注文オブジェクト。次の構文を使用してメタデータを更新できます:
$item->update_meta_data('meta_key', 'meta_value');
実装例:
add_action( 'woocommerce_checkout_create_order_line_item', 'custom_checkout_create_order_line_item', 20, 4 ); function custom_checkout_create_order_line_item( $item, $cart_item_key, $values, $order ) { // Get product custom field value $custom_field_value = get_post_meta( $item->get_product_id(), '_meta_key', true ); // Update order item meta if ( ! empty( $custom_field_value ) ) { $item->update_meta_data( 'meta_key1', $custom_field_value ); } // ... // Get cart item custom data and update order item meta if ( isset( $values['custom_data'] ) ) { $item->update_meta_data( 'meta_key2', $values['custom_data'] ); } }
結論:
woocommerce_checkout_create_order_line_item は、注文アイテムにカスタム メタデータを追加するための、非推奨の woocommerce_add_order_item_meta フックの代替として推奨されます。このフックと CRUD のセッターおよびゲッター メソッドは、WooCommerce 3 以降のデータ操作に対する最新かつ効率的なアプローチを提供します。
以上が非推奨の `woocommerce_add_order_item_meta` フックを置き換える方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。