Опубликовано: 8 декабря 2015
Цена = 0 и вывести текст "Цену уточняйте" Есть решение
Приветствую!
У меня много товаров без цены, но их можно положить в корзину.
Цена = 0 как-то не логично, нашел вот такую тему
https://support.webasyst.ru/forum/2053/yesli-tsena-tovara-0-vyvesti-po-zaprosu/
Сумел заменить код, чтобы это работало в списках и на витрине, а также в сравнении.
Не подскажите в каких шаблонах и какой код поменять чтобы то же самое было на витрине в "быстром просмотре", карточке товара и корзине.
Комментарии (6)
Попробуйте заменить строку в файле product.cart.html:
на:
Ага. Теперь в быстром просмотре и в карточке товара вместо цены нужная надпись. Но во всплывающей мини-корзине и в корзине пока нолик :) Спасибо, может кто знает как в корзине решить.
В файле desktop.pane.html строка:
меняем на строку:
Да, так уже получше. По крайней мере во всплывающей в футере мини-корзине уже видно что цена по запросу, хотя все еще присутствует ниже цена = 0. Но оно понятно, что корзина считает сумму и писать уже в самой корзине а затем на последнем шаге оформления что цена по запросу это уже избыточные навороты. В условиях не стабильных экономик и проблем с национальными валютами наверное пора вводить опцию на уровне всей корзины. Когда цена указана как ноль, выводить вместо цены какой-то текст на протяжении всего оформления заказа. У нас в магазине цена = 0 означает не то что в основном функционале, то есть "товар под заказ", а то что товар есть но цену озвучит менеджер по телефону так как много факторов влияют на формирование цены, а управлять этим из админки технически не возможно в данном случае.
В файле desktop.pane.html замените строку:
строкой:
так же сделайте и для строки:
заменив ее на строки:
*возможно это как то поможет решить проблему частично, но скорей всего придется править и скрипт добавления товара в корзину что бы при добавлении отображался нужный текст
Поддерживаю, болезненый вопрос и у меня. Иногда забываю выставить цену.
Можно скомпановать вышесказанное и упорядочить, а то уже непонятно , что и куда.
Ну да это костыли и довольно корявые, хотя лучше так чем никак.
Логика работы этого решения хромает. Если я допустим сначала добавил товар с ценой, а следом за ним товар с ценой = 0 то во всплывающей корзине мы видим Цена = 0, а не надпись. А вот после F5 (рефреша страницы) все показывается корректно.
То есть беглые правки решают часть проблемы чтобы клиент не придирался что по факту магазин продал товар без цены. :)
Что бы все заработало как надо - нужно проработать вопрос полностью. То как вы на данный момент используете приложение Магазин не является его стандартным поведением.
Лучше всего создайте техническое задание в котором опишите полностью что и как вам нужно и закажите такую доработку. В порядке ответов на вопросы форума скорее всего полностью решить ваш вопрос не удастся. Любое решение требует времени.
Это понятно, что для нулевой цены есть хорошая опция "под заказ" которая отрабатывает на 100%. Но сделана она как раз для таких случаев, о котором пишет здесь же Владимир Юрьевич Шпак
В нашем случае думаю заморачиваться не будем пока так как работы с корзиной наиболее дорогостоящие. Вам спасибо за помощь. Отличная поддержка авторов темы оформления.
Для решения момента добавления товара в корзину в файлах:
product.js, product.min.js, profitbuy.shop.js, profitbuy.shop.min.js
замените строку:
строкой:
*в каждом файле таких замен следует сделать две
Для решения момента добавления товара в корзину(сумма в корзине) в файлах:
product.js, product.min.js, profitbuy.shop.js, profitbuy.shop.min.js
замените строку:
строкой:
*в каждом файле таких замен следует сделать две
Для самих товаров в плавающей корзине можно попробовать следующий реверанс:
1) В файле list-thumbs.html заменить строку:
строкой:
2) В файле product.cart.html заменить строку:
строкой:
*возможно придется что то подправить, но теоретически должно работать
На данный момент компоновать пока не стоит, возможно что мы переработаем и этот момент и инструкции в этом топике станут неактуальны. Тем более что по большей части это частичное решение проблемы, а не полное и его нельзя рекомендовать всем.
Это довольно сложная проблема работы логики приложения Магазин и инструкцией тут не обойтись. У большинства возникнет еще больше вопросов при попытке ее воспроизвести. Лучше всего подобные изменения заказывать доработкой, там можно учесть все интересующие моменты и проработать все узкие места, а главное что бы все это работало голова будет болеть не у вас, а создающего эту доработку ;).
Спасибо, много кода я конечно попробую, но боюсь внести какой-то баг в корзину и не сразу его отследить, а потом забуду что делал. Корзина важный элемент. Если руководство будет давить рискну, а так пока хватит того что до корзины и в мини-корзины предупреждение что цену уточнять. Далее пусть на себя винят :)
Просто помечайте измененные места комментариями:
{* тут комментарий для SMARTY *}
/* тут комментарий для JAVASCRIPT */
<!-- тут комментарий для HTML -->
Я так и делаю, но в js шаблонах указанный код встречается не один раз, кроме того файл product.min.js похоже оптимизирован, удалены пробелы. Как-то страшно мне такие файлы редактировать :) Я не программист и малейшее выпадение "шаблона" и я могу накосячить :)
Сделайте хитрый ход - в местах подключения минифицированных файлов JS удалите приставку ".min", таким образом вы сможете использовать не минифицированные файлы.
Изменения нужно сделать для указанных в комментариях файлов. Их подключение вы найдете в файлах head.html и product.cart.html
Саша, ты молодчина, но всё таки давайте данную доработку добавим в шаблон, я считаю, что это актуально не только для невнимательных как я но и для тех, кто работает с нулевыми ценами.
Добрый вечер.
Сделал все как в вашей статье.
Но у меня в товаре выбор параметров - то есть несколько вариаций цен у товара в зависимости от выбранной пробы.
Попробуйте заменить строку в файле product.cart.html:
на:
{/if}
При первоначальной загрузке действительно стала появляться надпись "Цена договорная". Но потом она превращается в о р.
пример страницы http://t2.seoshnig.ru/tseli_i_braslety/bismark/
в чем может быть проблема ?
С уважением, Денис