Я не совсем уверен, правда ли это, поскольку это всего лишь временное решение, которое я придумал, чтобы понять, как WOOCOMMERCE выполняет расчет скидки.
Итак, в приведенном ниже фрагменте кода я имитировал запрос заказа через WP API с рассчитанной извне суммой скидки, после чего я передал новое значение $totalPrice в API, чтобы оно отражало скидку на панели администратора. Код РАБОТАЕТ и скидка отобразилась на панели управления
Код: Выделить всё
//code snippet
$order_data = [
'payment_method' => 'bacs',
'payment_method_title' => 'Checkout',
'customer_id' => intval($customer_id),
'transaction_id' => (string)$transaction_id,
'set_paid' => true,
'status' => 'completed',
'billing' => $billing_data,
'shipping' => $shipping_data,
'meta_data' => array(
array(
'key' => 'created by',
'value' => 'api request'
)
),
'line_items' => array(
array(
'product_id' => intval($product_id),
'quantity' => intval($quantityToBuy),
'total' => (string)$totalPrice,
)
),
];
Код: Выделить всё
$order_data = [
'payment_method' => 'bacs',
'payment_method_title' => 'Checkout',
'customer_id' => intval($customer_id),
'transaction_id' => (string)$transaction_id,
'set_paid' => true,
'status' => 'completed',
'billing' => $billing_data,
'shipping' => $shipping_data,
'meta_data' => array(
array(
'key' => 'created by',
'value' => 'api request'
)
),
'line_items' => array(
array(
'product_id' => intval($product_id),
'quantity' => intval($quantityToBuy),
'total' => (string)$totalPrice,
)
),
'coupon_lines' => array(
array(
'code' => (string)$coupon_code
)
)
];
Как мне решить эту проблему, я открыт для любых предложений.
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/785 ... in-backend