Да, это возможно. Вместо использования $order->get_order_item_totals();
, вы должны использовать:
// For Order Sub-Total:
$order_subtotal = $order->get_subtotal();
// For Order Total:
$order_total = $order->get_total();
$cart_subtotal = array(
'label' => 'Subtotal',
'value' => $order_subtotal
);
$cart_total = array(
'label' => 'Total',
'value' => $order_total
);
Вы можете использовать все function methods in Class WC_Abstract_Order, чтобы получить различные итоговые показатели.
Поскольку каждый заказ может быть другим, Вы должны будете проверить некоторые из этих методов сначала в if
заявления, используя внутри него empty()
функции ...
Для общей стоимости заказа, вы можете также использовать get_post_meta()
функцию:
$order_total = get_post_meta($order->id, '_order_total', true);
Вы могли бы аль поэтому использовать эти другие meta_key
, которые вы можете найти в wp_postmeta
таблицы базы данных для order ID
с get_post_meta()
функции, чтобы сделать, например, пользовательские расчеты:
$order_shipping = get_post_meta($order->id, '_order_shipping', true);
$order_discount = get_post_meta($order->id, '_cart_discount', true);
$order_discount_tax = get_post_meta($order->id, '_cart_discount_tax', true);
$order_tax = get_post_meta($order->id, '_order_tax', true);
$order_shipping_tax = get_post_meta($order->id, '_order_shipping_tax', true);
// this one you get it yet
$order_total = get_post_meta($order->id, '_order_total', true);
Если вы хотите, чтобы взглянуть на все данные в одном ID заказа (включая информацию о клиенте, элементы заказа и многое другое думает ...), вы должны использовать только для просмотра:
echo var_dump($order->get_order_item_totals());
Ссылка:
Спасибо, много работает. –