我設法編寫我的插件來爲woocommerce產品添加額外的自定義字段。這從購物車一直到完成訂單。去我的帳戶並查看過去的訂單,自定義字段顯示正確。Woocommerce再次訂購不會複製自定義字段
但是,當我選擇在過去訂單上點擊「重新訂購」時,新購物車不包含自定義字段及其值。
這是我目前有嘗試這樣的:
// order again
add_filter('woocommerce_order_again_cart_item_data', 'woocommerce_order_again_cart_item_data', 10, 3);
function woocommerce_order_again_cart_item_data($cart_item_meta, $product, $order){
global $woocommerce;
// Disable validation
remove_filter('woocommerce_add_to_cart_validation', array($this, 'validate_add_cart_item'), 10, 3);
if (! array_key_exists('item_meta', $cart_item_meta) || ! is_array($cart_item_meta['item_meta']))
$cart_item_meta['item_meta'] = array();
foreach (array('jhpc_toppings', 'jhpc_sauce', 'jhpc_toppings_half', 'jhpc_sauce_half', 'jhpc_garnish') as $key)
$cart_item_meta['item_meta'][$key] = $product['item_meta'][$key];
return $cart_item_meta;
}