Через хук работает но если пишу свою функцию, скидка не встает
<?php
/**
* Implements hook_commerce_order_presave().
*/
function mymodule_commerce_order_presave($order) {
$order_wrapper = entity_metadata_wrapper('commerce_order', $order);
$discount_decimal = -500;
$discount_currency_code = 'RUB';
$order_total = $order_wrapper->commerce_order_total->value();
$discount_amount = commerce_currency_decimal_to_amount($discount_decimal, $discount_currency_code);
$discount_amount = commerce_currency_convert($discount_amount, $discount_currency_code, $order_total['currency_code']);
$order_wrapper->commerce_order_total->amount = $order_total['amount'] - $discount_amount;
$order_wrapper->commerce_order_total->data = commerce_price_component_add($order_total, 'discount', array(
'amount' => $discount_amount,
'currency_code' => $order_total['currency_code'],
'data' => array(),
), TRUE);
}
?>
Комментарии
http://xandeadx.ru/blog/drupal/786
если возможно примером, читал не помогло)
Может проще тогда через Rules UI?
Проблема актуальна. Через рулес не хочу)
вам уже указали 2 варианта решения проблемы
1. програмно
2. через rules
других вариантов нет