Opencart 2.3 — Не отправляются подарочные сертификаты после оплаты
Столкнулся с забавной хероборой, связанной с неработающей автоматической отправкой подарочных сертификатов при достижении заказом конечного статуса.
В последних версиях opencart/ocstore 2.3 эту проблему уже решили на уровне движка.
В первую очередь, убедитесь что у вас включен модуль подарочных сертификатов в разделе «Учитывать в заказе» («Totals»), а также включено событие этого модуля:
Кроме того, убедитесь что у вас корректно указаны статусы в настройках системы (раздел Опции -> Статусы завершенного заказа)
Далее открываем catalog/controller/extension/total/voucher.php, и меняем это:
public function send($route, $output, $order_id, $order_status_id) { $this->load->model('checkout/order'); $order_info = $this->model_checkout_order->getOrder($order_id);
на это:
public function send($route, $args, $output) { $this->load->model('checkout/order'); $order_info = $this->model_checkout_order->getOrder($args[0]);
Опубликовано
24.10.2018