Не выводится наклейка "NEW" для нового товара  Архив

Inna
27 июля 2020
1

Добрый день! Не выводится для всех новых товаров стикер NEW, хотя все настройки для этого есть. Бывает, что вообще ни один товар не помечен данным стикером, или, например, из 20 товаров, которые залили новые одновременно, у одного товара есть стикер, а у другого нет. Что сделать, чтобы работало корректно? Заранее спасибо!
Вот, например, товар с пометкой NEW и две позиции справа пришли одновременно, но стикер только у одних. Как так?

3 ответа
  • Владимир Сергеев
    Разработчик
    Решение
    27 июля 2020 16:22

    Здравствуйте! 

    Автоматические стикеры "наклеиваются" только тем товарам, у которых нет вручную "накленных" стикеров.
    Проверьте в редакторе товара –> вкладка Фото и Видео –> наклейки. Чтобы было пусто. 

    Так же в настройках темы нужно проверить, настройку "Сколько дней товар считать новинкой". 

  • Inna
    Решение
    29 июля 2020 23:00

    Владимир, добрый день!


    "Сколько дней товар считать новинкой" - у нас настроено 30 дней.
    Что касается "вручную сделанных стикеров", я завожу товар программно через 1с, я ничего не создаю вручную, соответственно, никаких ручных стикеров нет. Поэтому надо починить этот баг другим путем.  Каким?

    Заранее спасибо!

    • Владимир Сергеев
      Разработчик
      Решение
      30 июля 2020 01:44
      Поэтому надо починить этот баг другим путем. Каким?

      Откуда ж мне знать откуда у вас взялся этот баг, и тем более каким путём его починить? На сколько мне известно, у вас в теме вносились правки. Плюс вы редактируете товары "программно". Может ещё плагины какие-то стоят, которые влияют на наклейки. 

      Могу вам предложить только платную 1800 руб/час (если проблема будет решена) диагностику. 
      Если проблема в теме, либо мне не удастся её решить, то безоплатно. 


  • Inna
    Решение
    30 июля 2020 16:24

    Владимир, добрый день! Повторю еще раз: я загружаю 20 товаров тем путем, которым я загружаю, на несколько товаров стикер встает, на несколько - нет. Раньше вроде бы вставало на все, точно сказать не могу, но есть ощущение, что да. Мы особо ничего не меняли за последний год.

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


    И, как я понимаю, если вы запускаете продажу темы к Вебасисту, то все плагины на ней должны работать, которые продает вебасист. Иначе. получается, некий конфуз, потому что вы всегда можете сказать: "У вас что-то не работает, потому что у вас стоят другие плагины", а работать без плагинов невозможно по большому счету.


    Так что, будьте добры, посмотрите, пожалуйста, и если проблема в нас, напишите, а если проблема в вас, почините, пожалуйста. И заранее спасибо!

    • Владимир Сергеев
      Разработчик
      Решение
      30 июля 2020 17:10
      Как я понимаю, есть техническая проблема в "теме", потому что ваше ПО не все товары по какой-то причине считает нужным пометить стикером, а не в том, что у меня стоят дополнительные плагины.

      Задача моего ПО отображать то, что выдаёт Shop-Script и/или его плагины.

      Вот есть код:

      Согласно этому коду, наклейка со новинкой отображается в случаях когда:

      • нет ручной наклейки
      • нет наклейки со скидкой (если автонаклейка скидки отключена или отсутствует зачёркнутая цена)
      • если товар был добавлен не позже кол-ва дней, указанного в настройках темы

      Вот эти три условия влияют на то, увидите вы наклейку с новинкой или нет. 

      Почему в некоторых случаях код срабатывает, а в других нет – это уже вопросы ПО Shop-Script или вашего, при помощи которого вы добавляете товары. И это нужно диагностировать. 

      Ну и тема дизайна – это же не автомобиль. Она же от пробега не изнашивается. 
      Если раньше работало, а теперь нет, значит вносились какие-то изменения: либо в код темы, либо в код шоп-скрипта (обновления, плагины и т.д.). Почему именно оно у части ваших товаров не срабатывает – я представления не имею. И чтобы это выяснить нужна диагностика. 

      Если не хотите делать диагностику, можете вынести код наклейки вне условий проверки. 

      Во всех этих файлах 

      Удалите код:

      {*ПО ВРЕМЕНИ*}
      {$new_days = $theme_settings.c_auto_new_days}
      {if (((time() - strtotime($p.create_datetime)) / (60*60*24)) < $new_days) && empty($auto_discount) && $p.badge !=='lowprice'}
          {$p.badge = 'new'}
      {/if}

      И вставьте этот код:

      {if (((time() - strtotime($p.create_datetime)) / (60*60*24)) < $new_days)}
          {$p.badge = 'new'}
      {/if}

      после строки:

      {* / АВТОБЕЙДЖИ*}
      • Inna
        Решение
        30 июля 2020 23:27

        Здравствуйте, Владимир!


        Попробовали ваш рецепт с подменой кода. Стикеры NEW перестали присваиваться совсем.



        В процессе проверки заметили такую вещь. Если оставить исходный код, когда стикеры частично работают, и сделать на пользователе вывод по 24 товара, то на второй странице пагинации видим кое-где стикер NEW. Но если, тут же, переключить в браузере на вывод по 48 товаров, то на этих же товарах стикер перестает выводиться. Возвращаем "24" и опять на второй странице пагинации товары получают стикер.

        Очевидно глючит витрина, а не Шопскрипт.

        Где еще можно покопаться?

        Спасибо!
        • Владимир Сергеев
          Разработчик
          Решение
          30 июля 2020 23:31

          Больше идей нет.

          • Inna
            Решение
            30 июля 2020 23:52

            Сами виноваты. Заработало.




            Кстати, такую же доработку пришлось делать для карточки товара.

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

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