Здравствуйте, есть необходимость в очень гибкой стоимости доставки, при этом появилась идея, что проще всего стоимость доставки для каждого товара прописать в каком то из свободных полей, например в поле MPN. Дефолтное поле хочу использовать что бы можно было через модули импорта/экспорта быстро редактировать стоимость. Логика простая, если в корзине один товар, то берем его стоимость доставки, если несколько то наименьшую. Что бы не писать всё с нуля хочу использовать тоже какой то готовый модуль, например фиксированная доставка но вместо фиксированной суммы подставлять стоимость с логикой как указано выше. Прошу знающих людей прокомментировать такую задумку, может что то подсказать, или может уже есть готовое решение/модуль. Спасибо
Вы уже по-сути все правильно расписали, осталось внести некоторые правки. В catalog/model/shipping/flat.php PHP: $quote_data['flat'] = array( 'code' => 'flat.flat', 'title' => $this->language->get('text_description'), 'cost' => $this->config->get('flat_cost'), 'tax_class_id' => $this->config->get('flat_tax_class_id'), 'text' => $this->currency->format($this->tax->calculate($this->config->get('flat_cost'), $this->config->get('flat_tax_class_id'), $this->config->get('config_tax'))) ); ставим PHP: $quote_data['flat'] = array( 'code' => 'flat.flat', 'title' => $this->language->get('text_description'), // редактируем это 'cost' => $this->getCost, 'tax_class_id' => $this->config->get('flat_tax_class_id'), 'text' => $this->currency->format($this->tax->calculate($this->config->get('flat_cost'), $this->config->get('flat_tax_class_id'), $this->config->get('config_tax'))) ); и добавляем метод getCost() в этот-же класс PHP: function getCost() { $products = $this->cart->getProducts(); // товары в корзине $delivery_costs = []; foreach ($products as $product) { $delivery_costs[] = $product['delivery']; } return min($delivery_costs); } При этом в system/library/cart.php PHP: $this->data[$key] = array(...'delivery' => ($product_query->row['MPN']) ? $product_query->row['MPN'] : 0 ,... Работоспособность не проверял, возможны ошибки )) P.S. OC 1.5.5
до тройки я пока не добрался, даже не смотрел ее внутри, по этому трудно что то подсказать Вам конкретное, но принцип доработок будет такой же.
Раньше не думал что на прежних версиях намного всё проще делается, а сейчас уже и не изменить ничего) А вообще что лучше?)
по моему мнению на данный момент хорошие релизы это опенкарт.про 2.3, и окстор 2.3, но лично мне с опенкарт.про легче и удобнее работать.
можно конечно, устанавливаете с нуля опенкарт, потом шаблон, модули, всё настраиваете, подгоняете дизайн, переносите товары, покупателей....