Скрыть товары без цены


Добрый вечер! Не поможете скрыть товары без цены? При выгрузке из 1с если у товара нет нужного типа цен, то она и количество не выгружает, а сайт начинает отображать такой товар с нулевой ценой и бесконечным количеством... И ещё вопрос, некоторые товары мы можем продавать только через менеджера, каким образом можно отображать цену, но вместо кнопки купить выводить "Звонок менеджеру" с переадресацией на страницу с информацией. Может есть какой плагин, но я подходящего ничего не видел.. Спасибо!

4 ответа
  • Александр
    Решение
    13 ноября 2017 09:19

    Первый вопрос точно к вам, так как обычно все это делают через правку шаблона.

    • Владимир Сергеев
      Разработчик
      Решение
      13 ноября 2017 14:58

      По первому вопросу отвечаю.
      Откройте приложение Магазин – витрина - proStore - шаблоны - во всех файлах с изображения ниже нужно проделать следующие манипуляции.

      После строки

      {foreach $products as $p}

      поставьте код:

      {if $p.price > 0}

      И теперь надо закрыть это условие.
      Найдите закрывающий {/foreach} (там ещё сразу после него идёт закрывающий тег </ul>)

      И сразу над {/foreach} поставьте закрывающий смарти-тег {/if}

      Также, если нужно спрятать товары с нулевой ценой из главного слайдера, то откройте файл home.slider.html
      Там нужно сделать то же самое, но только там вместо строки:

      {foreach $products as $p}

      Идёт строка:

      {foreach $slider_products as $p}
  • Владимир Сергеев
    Разработчик
    Решение
    13 ноября 2017 15:14
    И ещё вопрос, некоторые товары мы можем продавать только через менеджера, каким образом можно отображать цену, но вместо кнопки купить выводить "Звонок менеджеру" с переадресацией на страницу с информацией. Может есть какой плагин, но я подходящего ничего не видел.. Спасибо!

    Здесь нужно делать через доп. параметры товара.
    Если доп. параметр есть, то выводить кнопку связи с менеджером, если нет – то обычную кнопку покупки.
    Ну и в редакторе добавлять доп. параметр соответствующим товарам.

    Обратитесь к кому-нибудь из каталога экспертов.
    Задача не сложная, но требует некоторого времени, которого у меня, к сожалению, нет. =(

  • Александр
    Решение
    13 ноября 2017 15:16

    Спасибо Огромное за ответы!!!

  • Александр
    Решение
    14 ноября 2017 14:27

    Карточки товаров без цены он скрывает, но как то так...

    • Владимир Сергеев
      Разработчик
      Решение
      14 ноября 2017 14:39

      Надо подумать..,

    • Владимир Сергеев
      Разработчик
      Решение
      14 ноября 2017 17:20

      Александр, а киньте мне пожалуйста на [email protected] доступы в админку (логин, пароль, и ссылка на админку). И также ссылку на категорию, где вы делали скриншот выше.

    • Владимир Сергеев
      Разработчик
      Решение
      14 ноября 2017 18:56

      Александр, посмотрел я ситуацию и вот к какому выводу пришёл.

      Не смотря на то, что мы внутри цикла ( {foreach} – это цикл) скрываем товары, шоп-скрипт всё равно их учитывает при выводе.
      Получается, что товаров на странице у нас меньше. При этом ленивая загрузка "думает" что товаров столько, сколько должно быть и срабатывает раньше времени. Из-за этого счётчики, которые переносят карточки товаров на новую строку, срабатывают не в своё время и строчность товаров сбивается.

      Такая ситуация возникает только после срабатывания ленивой загрузки товаров.
      Чтобы этой ситуации избежать, я рекомендую вам отключить ленивую загрузку товаров. И поставить максимальное кол-во товаров на странице – 60.

      Так как шоп думает, что он показывает нам все товары (а мы часть скрыли), то и в постраничной навигации может найтись косяк. А именно, если вы выберите отображать по 12 товаров на странице, то вы не досчитаетесь тех самых скрытых товаров. =(

      Если поставить по 60, тоже будет товаров меньше, но уже никто считать не будет. =)

      К сожалению, по другому скрыть товары нельзя. =(
      Я выяснял у коллег возможно ли скрыть товары до того, как они попадут в цикл, и получил отрицательный ответ.

Добавить ответ
Чтобы добавить комментарий, зарегистрируйтесь или войдите
Мы получаем и обрабатываем персональные данные посетителей нашего сайта в соответствии с официальной политикой.
Если Вы продолжите использовать сайт, мы будем считать, что Вас это устраивает.
Подписывайтесь и получайте скидки!

Узнавайте первым о скидках и специальных предложениях!