Помощь Поддержка или помощь c Prestashop - 2 часть

Статус
В этой теме нельзя размещать новые ответы.
Это не мне спасибо, это Сашку спасибо, я лишь строки местами поменял.
Думаю как-то вот так должно быть
Код:
{if $attribute.specific_price != $attribute.price}
<span class="price {if $attribute.specific_price AND $attribute.specific_pricee>0}green-price{/if}">
{convertPrice price=$attribute.specific_price}
</span>
{else}
<span class="price">
{convertPrice price=$attribute.price}
</span>
{/if}
еще дописал класс и все заработало)
Код:
{if $attribute.specific_price != $attribute.price}
<span class="price green-price{if $attribute.specific_price AND $attribute.specific_pricee>0}green-price{/if}">
{convertPrice price=$attribute.specific_price}
</span>
{else}
<span class="price">
{convertPrice price=$attribute.price}
</span>
{/if}
 
еще дописал класс и все заработало)
Код:
{if $attribute.specific_price != $attribute.price}
<span class="price green-price{if $attribute.specific_price AND $attribute.specific_pricee>0}green-price{/if}">
{convertPrice price=$attribute.specific_price}
</span>
{else}
<span class="price">
{convertPrice price=$attribute.price}
</span>
{/if}
обратите внимание на , скорее всего одна буква "e" лишняя. подправьте у себя
upload_2016-8-30_12-10-39.png
 
Нужно было сделать кнопку на странице продукта, возвращающую назад в категорию. При этом должны сохраняться выбранные фильтры в Advanced Search. То есть перейти по ссылке, с которой он пришел. Вроде подходит аналог кнопки back в браузере:
<a href="#" onclick="window.history.go(-1); return false;">{l s='Back to previous page'}</a>
Вставил в product.tpl, но есть, как минимум, две проблемы. Надо бы ее спрятать при заходе с других доменов или если некуда возвращаться. Точнее лучше показывать, только если пришел из категории.

Или может есть несложное и менее стремное решение?
 
Нужно было сделать кнопку на странице продукта, возвращающую назад в категорию. При этом должны сохраняться выбранные фильтры в Advanced Search. ...

Или может есть несложное и менее стремное решение?

думаю, что можно в *.tpl с помощью смарти проверять

Код:
{if $smarty.Server.HTTP_REFERER eq $smarty.session.myurl}...
 
думаю, что можно в *.tpl с помощью смарти проверять

Код:
{if $smarty.Server.HTTP_REFERER eq $smarty.session.myurl}...

После того, как server с маленькой буквы написал, в продукт смог зайти. Потом на месте кнопки следующая ошибка появилась:
Notice: Undefined variable: _SESSION in cache\smarty\compile\1a\c8\2e\1ac82e45accfd58c8f8ee7d45a168897e4285baf.file.product.tpl.php on line 239

Дальше пошел в product.php
$_SESSION['myurl'] = 'Для просмотра ссылки Войди или Зарегистрируйся
Сайт на локальном сервере. Ошибка пропала, переменная больше не пустая, но кнопки нет при переходе с главной, проверка видимо не прошла. Может к правильному виду надо ссылку привести?

P.S. Да, слеш в конце и заработало. Теперь попробую сделать для категорий собственно...

P.S.S. Остановите меня, я не знаю php. Исправил на
Код:
$_SESSION['myurl'] = array('http://www.mydomen.com/', 'http://www.mydomen.com/*');
Все еще работает только с главной. Как засунуть в массив все нужные мне урлы? В tpl исправил на {if in_array($smarty.server.HTTP_REFERER, $smarty.session.myurl)}, проверка работает, надо разобраться с $smarty.session.myurl. У меня чувство, будто тут должна хранится ссылка клиента, а не то, что я сам вписал..
 
Последнее редактирование:
Все еще работает только с главной. Как засунуть в массив все нужные мне урлы? В tpl исправил на {if in_array($smarty.server.HTTP_REFERER, $smarty.session.myurl)}, проверка работает, надо разобраться с $smarty.session.myurl. У меня чувство, будто тут должна хранится ссылка клиента, а не то, что я сам вписал..
Все несколько проще. Вам нужен код типа такого в шаблоне:
Код:
{if $smarty.server.HTTP_REFERER|regex_replace:"/regexp/":"" !== $smarty.server.HTTP_REFERER}
<a href="{$smarty.server.HTTP_REFERER}" class="btn">Go back</a>
{/if}
Соответственно, /regexp/ тут замените на регулярку, которая правильно будет проверять адреса ваших категорий (задать шаблон можно в Настройки->SEO и URLs)
 
Все несколько проще. Вам нужен код типа такого в шаблоне:
Код:
{if $smarty.server.HTTP_REFERER|regex_replace:"/regexp/":"" !== $smarty.server.HTTP_REFERER}
<a href="{$smarty.server.HTTP_REFERER}" class="btn">Go back</a>
{/if}
Соответственно, /regexp/ тут замените на регулярку, которая правильно будет проверять адреса ваших категорий (задать шаблон можно в Настройки->SEO и URLs)
Ссылка в виде $smarty.server.HTTP_REFERER не подходит, возвращает в категорию без фильтров. C фильтром - "Для просмотра ссылки Войди или Зарегистрируйся:". Возвращает в "Для просмотра ссылки Войди или Зарегистрируйся". Использовать window.history.go(-1) все-таки? Или есть другой выход?
 
Ссылка в виде $smarty.server.HTTP_REFERER не подходит, возвращает в категорию без фильтров. C фильтром - "Для просмотра ссылки Войди или Зарегистрируйся:". Возвращает в "Для просмотра ссылки Войди или Зарегистрируйся". Использовать window.history.go(-1) все-таки? Или есть другой выход?

я такое юзаю при необходимости на странице товара

Код:
<button type="button" id="btn_continue_shopping" style=" margin: 5px 15px 20px 10px; padding: 5px 10px; " class="btn btn-default pull-right" onclick="history.back(-1)"><i class="fa fa-chevron-left fa-1x"></i> Вернуться в каталог</button>
 
tools/smarty/sysplugins/smarty_internal_template.php переименовывается в smarty_internal_template.php.suspected
Сайт после этого работать отказывается, вынужден переименовывать обратно. Кем и в чем этот файл подозревается и как это прекратить?

Раз в сутки стабильно это происходит, гугл мне не помог, мануал по престе в моих руках оказался не слишком ценным на этот раз. Ссылка на сайт:

Пишу хостеру, что, наверно, инфицирован сайт, и ваша защита переименовывает подозрительный файл. Нет, говорят, мы тут не при чем.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху