shaklov 63 Опубликовано 11 февраля, 2013 Жалоба Share Опубликовано 11 февраля, 2013 Ищем в сформированной цене $module_data.PRODUCTS_PRICE (или подобной) фразу "бесплатно" и обрабатываем условие, например не выводим кнопку "купить": {if strpos($module_data.PRODUCTS_PRICE, strval('бесплатно')) !== false} звоните {else} {$module_data.PRODUCTS_PRICE} метка кнопки купить {/if}[/CODE]И не нужно править языковой файл, т.к. слово "бесплатно" используется во многих других полезных местах Ссылка на сообщение Поделиться на другие сайты
KoVaLsKy 59 Опубликовано 11 февраля, 2013 Жалоба Share Опубликовано 11 февраля, 2013 Отличный мануал. Порой возможности смарти сводят с ума. Если покапаться, то будет вычислять группу крови пользователя :) http://vk.com/doc15858197_136972357?hash=9e2869579e8059c848 Ссылка на сообщение Поделиться на другие сайты
sheldon 1 Опубликовано 11 февраля, 2013 Жалоба Share Опубликовано 11 февраля, 2013 ' timestamp='1360600778' post='93091'] Ищем в сформированной цене $module_data.PRODUCTS_PRICE (или подобной) фразу "бесплатно" и обрабатываем условие, например не выводим кнопку "купить": {if strpos($module_data.PRODUCTS_PRICE, strval('бесплатно')) !== false} звоните {else} {$module_data.PRODUCTS_PRICE} метка кнопки купить {/if}[/CODE]И не нужно править языковой файл, т.к. слово "бесплатно" используется во многих других полезных местах спасибо. нужная информация. а для совсем чайников,которые только учатся: в какой папке и в каком файле это нужно искать? Ссылка на сообщение Поделиться на другие сайты
KoVaLsKy 59 Опубликовано 12 февраля, 2013 Жалоба Share Опубликовано 12 февраля, 2013 спасибо. нужная информация. а для совсем чайников,которые только учатся: в какой папке и в каком файле это нужно искать? где угодно, где есть цена :) т.е в модулях. templates/шаблон/module/ и погнали. Ссылка на сообщение Поделиться на другие сайты
sheldon 1 Опубликовано 13 февраля, 2013 Жалоба Share Опубликовано 13 февраля, 2013 ок. тогда какой файл в модулях, относится именно за вывод цены товара или за,если нет цены,то за вывод во все товарах слова "бесплатно". да [:|||||||:] прав! я правил TXT_FREE и теперь у меня даже при выборе способа доставки, там где самовывоз или бесплатная доставка,стоит текст,который реально ни к селу ни к городу,в том месте. а в товарах,вместо цены, он как раз нужен. но в доставке и оплате,совсем не упёрся.спасибо вам обоим за ответы и за такие подсказки Ссылка на сообщение Поделиться на другие сайты
sheldon 1 Опубликовано 16 февраля, 2013 Жалоба Share Опубликовано 16 февраля, 2013 Пожалуйста подскажите:какой файл и в какой папке отвечает за вывод слова бесплатно,вместо цены, только и строго у товаров? если я ничего не знаю про метки,и не умею их править, могу ли я в этом файле так же как и в В /lang/russian/russian.php TXT_FREE - заменить слово бесплатно, на другую нужную мне информацию? при этом ничего не делая с метками,а просто написав что то другое вместо бесплатно Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 17 февраля, 2013 Жалоба Share Опубликовано 17 февраля, 2013 Сам текст в russian.php Текст менять можно, но везде, где 0 будет этот текст. Вывод текста идёт из /includes/classes/vam_price.php Там задаётся условие вывода TXT_FREE Ссылка на сообщение Поделиться на другие сайты
sheldon 1 Опубликовано 17 февраля, 2013 Жалоба Share Опубликовано 17 февраля, 2013 Сам текст в russian.php Текст менять можно, но везде, где 0 будет этот текст. Вывод текста идёт из /includes/classes/vam_price.php Там задаётся условие вывода TXT_FREE смотрите что у нас получается. описываю еще раз: если лезть в lang/russian/russian.php и там искать TXT_FREE - и вместо бесплатно, ставить свой текст, то да, это самый лёгкий путь, ноооооооооооооооооооооооооооооо Он и не сильно то правильный! Потому что,в таком раскладе, то что я написал в TXT_FREE,вместо "бесплатно" - вылезает и в модулях оплаты и доставки - что уж извините, совсем так не корректно смотрится и реально путает людей. Даже я фигею,когда это там фижу и тоже не понял бы, зайдя в чужой инет магаз, чего это в выборе доставки и оплаты,делает этот текст!? вот и вопрос: как же мне для всех товаров и услуг, оставить текст который я ставлю вместо "бесплатно" в TXT_FREE. а для модулей доставки и оплаты, например для модуля смовывоз и для модуля "по согласованию с администрацией" - сделать вывод совсем другого текста, ну взять хотя бы того же "бесплатно"? Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 17 февраля, 2013 Жалоба Share Опубликовано 17 февраля, 2013 Тогда правьте шаблоны, везде где вывыодится цена товара и выставляйте условие, что если цена 0 - выводить текст. Тогда будет везде где 0 текст, а в модулях доставки, оплаты просто 0. Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 1 августа, 2013 Жалоба Share Опубликовано 1 августа, 2013 А подскажите пожалуйста , если нужно контролировать не слово "бесплатно" , а цифру "0"? Если пишу {if strpos($module_data.PRODUCTS_PRICE, strval('0')) !== false} ....... То все числовые значения с 0 попадают под это условие, к примеру 250, 500 .... Я так понимаю, что из за строкового значения... Как задать точное, "циферное" 0 ? Ссылка на сообщение Поделиться на другие сайты
shaklov 63 Опубликовано 2 августа, 2013 Автор Жалоба Share Опубликовано 2 августа, 2013 тогда просто проверка неформатированной цены на больше нуля: {if $module_data.PRODUCTS_PRICE_PLAIN > 0} ... {/if} Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 В таком варианте правильный синтаксис - пытаюсь использовать в другом месте Сейчас: {if strpos($method_data.price, strval('0')) !== false} Меняем на : {if $method_data.PRICE_PLAIN > 0} :huh: Я извиняюсь за "борзость" :), но программист на месяц уехал - приходиться лезть не в свое дело. Как пишется "или" - нужно совместить оба условия? {if strpos($method_data.price, strval('Бесплатно')) !== false} или {if $method_data.PRICE_PLAIN > 0} ... {/if} Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 Нет, если это речь про блок со списком модулей доставки, то там нет метки PRICE_PLAIN, там только $method_data.price Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 То есть вот так правильно? {if $method_data.price > 0} Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 По идее, да. Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 Нет что то в синтаксисе не так - checkout_shipping.php грузит чистую страницу Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 Так наверное что-то лишнее где-то. Достаточно ведь просто в /templates/шаблон/checkout_shipping_block.html поменять: {$method_data.price} на: {if $method_data.price > 0}{$method_data.price}{/if} Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 Да получилось спасибо. Я нагородил более сложную конструкцию :( А как здесь "поймать" модуль sogl по системному имени {if $method_data.title == 'sogl'}{/if} Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 бычно доставка задаётся через двойную запись, т.е. sogl_sogl, соответственно, условие: {if $method_data.title == 'sogl_sogl'}{/if} Ссылка на сообщение Поделиться на другие сайты
alexts 18 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 Спасибо, попробую. Вот так и стану крутым программером :D Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 2 августа, 2013 Жалоба Share Опубликовано 2 августа, 2013 Удачи Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения