Я использовал пользовательское поле цены в объекте заказа с этим именем: field_commerce_order_off
для получения пользовательской скидки от администратора в «admin/commerce/orders/add». Я пытаюсь использовать этот хук:
<?php
// Implements hook_commerce_order_presave().
function commerce_deposit_account_commerce_order_presave($order) {
if($order->field_commerce_order_off){
$discount = $order->field_commerce_order_off['und'][0]['amount'];
$line_item = commerce_line_item_load($order->commerce_line_items['und'][0]['line_item_id']);
// Add the discount as a price component
$line_item->commerce_unit_price->data = commerce_price_component_add(
$order->commerce_order_total['und'][0]['amount'],
'discount',
array(
'amount' => $discount * -1,
'currency_code' => 'IRR',
'data' => array()
),
0 // NOT included already in the price
);
}
}
?>
Но это не работает! Я не хочу добавлять скидку к line_item
, я хочу добавить скидку к заказу.