注文アイテムのカスタム メタの非推奨の「woocommerce_add_order_item_meta」フックを置き換える
最新の WooCommerce 2.3.7 リリースでは、「woocommerce_add_order_item_meta」フックは非推奨としてマークされています。この記事の目的は、注文アイテムにカスタム メタをシームレスに追加するための代替フックの選択について開発者をガイドすることです。
置換フック: woocommerce_checkout_create_order_line_item
カスタムを追加するための推奨置換フックWooCommerce 3 以降でアイテムを注文するためのメタは「woocommerce_checkout_create_order_line_item」です。このフックは、非推奨のフックと同様の機能を提供し、次の引数を持ちます:
新しいフックの使用
「woocommerce_checkout_create_order_line_item」フックを使用するには、次のようなカスタム関数を定義できます。以下の例:
<code class="php">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 custom data and update order item meta $custom_data = get_cart_item_meta( $cart_item_key, 'meta_key' ); if ( ! empty( $custom_data ) ) { $item->update_meta_data( 'meta_key', $custom_data ); } }</code>
この関数は、カート項目からカスタム メタ値を取得し、WC_Order_Item_Product クラスの update_meta_data() メソッドを使用して、対応する注文項目メタを更新します。
新しいフックを使用する利点
「woocommerce_checkout_create_order_line_item」フックには、次のような利点があります。
注: 「woocommerce_add_order_item_meta」フックはまだ機能しますが、将来の互換性とコード効率の向上のために、「woocommerce_checkout_create_order_line_item」フックに移行することをお勧めします。
以上が注文アイテムのカスタム メタの非推奨の「woocommerce_add_order_item_meta」フックを置き換える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。