尝试woocommerce_checkout_create_order_line_item
它有4个可用参数,在WooCommerce 3.3以上版本后可用。
$item
是的实例WC_Order_Item_Product
新引入的类$cart_item_key
购物车项目是否为唯一哈希键$values
是购物车项目$order
的实例WC_Order
对象(在某些特定情况下,这是一个非常有用的附加参数)
在这个钩子中,我们将替换旧的工作函数
wc_add_order_item_meta()
由新
WC_Data update_meta_data()
要与一起使用的方法
$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 ) {
// Get a 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 );
}
// … … Or … …
// Get cart item custom data and update order item meta
if( isset( $values[\'custom_data\'] ) ) {
$item->update_meta_data( \'meta_key2\', $values[\'custom_data\'] );
}
}