Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Оператор присваивания

Как реализовать присваивание в хтмл-файлах модулей? Как я понимаю, в смарти это делается так

{assign var="$variable" val="value"}

Вот такой вариант не работает (обнуление цены доставки при цене заказа выше 1500). Переменная $ORDER_PR - передается в шаблон корректно, если что.

{if $ORDER_PR<=1500}{$method_data.price}{else}{assign var="$method_data.price" value=0}{$method_data.price}{/if}


не проще все сделать в PHP, а в шаблон уже передать результат?


А вот в том то и дело, как я в файле модуля (например, если речь о курьерской доставке, это файл - modules\shipping\flat\flat.php) узнаю цену заказа? Там она не фигурирует вообще. Где там цена самой доставки - понятно


А зачем файл доставки?
На какой странице это нужно делать? checkout_shipping.php?

Там же идет вывод цены.
$quotes['methods']['price'] - вывод - {$method_data.price}
Если не ошибаюсь.

Или я не понимаю мысли?


а с какой целью вообще делаете? Чтобы, если цена больше 1500 то была доставка 0?


{if $ORDER_PR<=1500}{$method_data.price}{else}{assign var="$method_data.price" value=0}{$method_data.price}{/if}

такой метод ничего не даст.
Вы тут обнулили бы только в выводе для покупателя.
В Итого все равно передалась бы стоимость товара+ доставка.

В админке - Дополнения-Модули итого-Доставка
Может подойдет
Там можно указать сумму, после которой доставка будет 0


У меня установлено всего 2 модуля: почта россии (в нашем случае не рассматривается) и курьерская доставка. Чтобы не путать покупателей, решили убрать ненужные "бесплатная доставка", и просто динамически подсчитать стоимость доставки курьерской, если цена заказа больше 1500, например, то курьерская бесплатная. В админке таких опций не задать для курьерской именно.


Переделайте модуль бесплатной доставки в курьерский и когда стоимость товара будет больше 1500, то он будет включаться.
В общем, мне кажется, что можно вообще ничего не кодить, а просто правильно настроить магазин.


Вот у меня так
Если цена ниже 2999руб. то курьерская доставка 300руб.
а если выше 2999руб. то курьерская доставка бесплатно!
вот настройка в админк смотри в скрине  ;)


Источник



Copyright ShopOS