Функция позволяет изменить какие-либо метаданные позиции заказа WooCommerce, например цену или даже ID товара, к которому она прикреплена. Если метаданных с указанным ключом не существует, то они будут добавлены.
Возвращает true
, если обновление/добавление прошло успешно, иначе – false
.
wc_update_order_item_meta( $item_id, $meta_key, $meta_value, $prev_value );
get_items()
, подробнее тут.В качестве примера попробуем изменить цену доставки в заказе с определённым ID.
$order_id = 5; $order = wc_get_order( $order_id ); $order_items = $order->get_items( array( 'shipping' ) ); foreach( $order_items as $item_id => $order_item ) { wc_update_order_item_meta( $item_id, 'cost', 500 ); } $order->calculate_totals();
get_items()
объекта заказа WC_Order
для получения всех позиций заказа, связанных с доставкой (для этого в качестве параметра передаём значение shipping
).cost
– это предопределённое значение мета-ключа, отвечающего за цену доставки, полный список зарезервированных ключей вы найдёте здесь.$order->calculate_totals()
.
Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.