已棄用的“woocommerce_add_order_item_meta”隨著 WooCommerce 2.3.7 的發布,此掛鉤現已被棄用,開發人員不得不尋找替代方案。
替換掛鉤:woocommerce_checkout_create_order_line_item
自WooCommerce 3 以來,一個新的掛鉤引入了CRUD(創建、、讀取、刪除)系統,其中包括新的系統讀取setter 和getter 方法。 「woocommerce_add_order_item_meta」的替換掛鉤是 woocommerce_checkout_create_order_line_item。
woocommerce_checkout_create_order_line_item 參數:
此掛鉤提供四個參數:
要使用此掛鉤將自訂元新增至訂單商品,您可以使用以下更新的程式碼:
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 ) {
// Update order item meta using the WC_Data update_meta_data() method
$item->update_meta_data( 'meta_key1', $custom_field_value );
}<p><strong>雖然woocommerce_checkout_create_order_line_item 鉤子是建議的替代品,但如果需要,您仍然可以使用已棄用的“woocommerce_add_order_item_meta”鉤子。但是,請務必注意,此掛鉤已被棄用,並且可能會在 WooCommerce 的未來版本中刪除。 </strong></p>
<p></p>結論<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><code class="php">add_action( 'woocommerce_add_order_item_meta', 'custom_add_order_item_meta', 20, 3 );
function custom_add_order_item_meta( $item_id, $values, $cart_item_key ) {
// Update order item meta using wc_add_order_item_meta()
wc_add_order_item_meta( $item_id, 'meta_key1', $custom_field_value );
}</code></pre><div class="contentsignin">登入後複製</div></div>
<p><strong>建議使用 woocommerce_checkout_create_order_line_item 掛鉤使用 WooCommerce 3 及更高版本時來取代已棄用的「woo_emce_addta」。它提供相同的功能並與該版本中引入的新 CRUD 系統保持一致。 </strong></p>
以上是如何取代 WooCommerce 中已棄用的「woocommerce_add_order_item_meta」掛鉤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!