Скрытие товаров в категории

4

Добрый день .

Есть функция показывать товары с нулевым остатком в конце категории.

Предлагаю сделать дополнительной функцией скрытие товаров с нулевым остаток в категориях автоматом, при этом чтобы эти товары можно было найти поиском по сайту и были доступны по прямой ссылке.

Для чего это нужно. Допустим у меня в категории 9000 товаров из них 2500 нет в наличии и они мешают клиентам при навигации по сайту.

Можно конечно их скрывать статусом не показывать на сайте, но тогда эти товары нельзя найти поиском по сайту. А если клиент ищет определенный артикул , забивает его в поиске на сайте, а в ответ ни чего не найдено, клиент уходит.

Плагин сообщить о наличии теряет свой смысл.

И чтобы их скрыть это дополнительные временные затраты.

1. импортировать остатки

2 .экспорт всех товаров

3. в экселе всем товарам с нулевым остатком присвоить статус 0

4. импортировать файл обратно на сайт.

У меня 35 000 наименований и каждый раз проделывать данную процедуру занимает около 2 часов времени. (А у кого 70 000 товаров, на данную процедуру будет уходить пол дня) плюс Создается дополнительная нагрузка на сервер. Да и просто это жутко не удобно.

13 комментариев

  • +2

    Ээээ ... а зачем плагин?

    В шаблоне category.html ищите какой файл у Вас используется для вывода списка товаров в категории. Что-то типа:


    {include file='list-thumbs.html' sorting=!empty($category.params.enable_sorting)}

    здесь используется файл list-thumbs.html. Открываем его. Находим


    {foreach $products as $p}

    ПОСЛЕ вставляем

    {if p.count === 0}
        {continue}
    {/if}


    В живую не пробовал, но, по идеи, должно работать =)

  • +1
    Евгений Евгений 4 октября 2015 15:58 #

    Спасибо, попробую после отпуска. С телефона боюсь накосячить)))

  • +1
    Евгений Евгений 7 октября 2015 03:30 #

    Не работает, ошибка #0

  • +1
    Евгений Евгений 7 октября 2015 09:27 #

    Уже лучше)))

    Из категории товар пропадает, но когда забиваешь этот товар в поиске, пишет товаров найдено 1, но сам товар не отображается)))

  • +1
    Евгений Евгений 8 октября 2015 10:09 #

    Попробовал, таким образом, все получилось, товары скрылись, поиск их находит, но в категориях получилась ленивая загрузка... А можно тоже самое сделать в постраничной навигации?

  • +1
    Евгений Евгений 8 октября 2015 10:28 #

    А нет сам дурак, у меня чуть по другому было, сейчас работает.

    {include file='catalog.html' sorting=!empty($category.params.enable_sorting) pshow=1 is_category=1}

  • +1
    Евгений Евгений 8 октября 2015 14:36 #

    Дмитрий, все таки есть косяк.

    В категории в постраничной навигации, на последних страницах идут пустые страницы, вместо страниц с товарами с нулевым остатком. Как их убрать?

  • +1
    Евгений Евгений 19 октября 2015 16:48 #

    Теме Ап.

    Решение так и не найдено...

    • +1

      С этим сложнее. Надо в движок лезть, т.к. кол-во страниц считается ДО отброса товаров с нулевым остатком.

      Ну а если лезть в движок, то можно тогда сразу там и поменять выборку товаров =)

      UPD

      А нет, хотя победил ... не надо движок ковырять =)

      НО ... объяснять долго. Проще самому сделать. Киньте мне на support@byloneprosto.ru данные для входа в админку магазина.

    • +2

      Хотя ладно. Попробую объяснить. На примере шаблона Купить Просто

      В файле product-list.html перед

      {foreach $products as $p}

      добавляем счетчик продуктов

      {assign var count value=0}

      После нашей предыдущей добавки

      {if $p.count == 0 && isset($pshow)}
          {continue}
      {/if}

      добавляем

      {$count++}

      В данном шаблоне (да и похоже везде) кол-во страниц задается через $pages_count. Ищем в product-list.html

      {if isset($pages_count) && $pages_count > 1}

      И перед вставляем

      {$pages_count = ceil((float)$count / $pppc)}

      $pppc - в данном шаблоне, это кол-во товаров на страницу. Переменная добавлена т.к. в шаблоне предусмотрена динамическая смена кол-ва отображаемых продуктов на странице. В шаблоне Default я, например, такого не нашел, поэтому если такой переменной нет, можно подставить просто нужное число.

      Ну а далее .... Enjoy ;))

    • +2
      Евгений Евгений 22 октября 2015 18:25 #

      так решение и не найдено... Дмитрию огромное спасибо за попытки что то придумать. А WA так и молчит...

      Добавить комментарий

      Чтобы добавить комментарий, зарегистрируйтесь или войдите