Случай использования:
дата добавляется к элементу как мета с помощью wc_add_order_item_meta
add_action( 'woocommerce_add_to_cart', 'add_event_date_meta', 10, 3 );
function add_event_date_meta($cart_item_key, $product_id, $quantity) {
$event_date = get_cart_item_event_date();
$result = wc_add_order_item_meta( $product_id, '_event_date', $event_date);
}
$ Result является действительным идентификатором, но мета _event_date не включена в элемент корзины покупок. Есть ли что-то, что я не правильно понимаю? Мета-ключ должен быть добавлен в элемент корзины, пока я получаю его идентификатор, или?
Благодарю вас helgatheviking а также LoicTheAztec за ваши комментарии. Решение, которое я нашел в helgatheviking«s руководство. Это именно то, что я искал:
/*
* Add custom data to the cart item
* @param array $cart_item
* @param int $product_id
* @return array
*/
function kia_add_cart_item_data( $cart_item, $product_id ){
if( isset( $_POST['_custom_option'] ) ) {
$cart_item['custom_option'] = sanitize_text_field( $_POST['_custom_option'] );
}
return $cart_item;
}
add_filter( 'woocommerce_add_cart_item_data', 'kia_add_cart_item_data', 10, 2 );
Других решений пока нет …