Как записать ссылку пагинации в смарти Есть решение

Всем привет!

Есть задача, с помощью конструкции {if $smarty.server.REQUEST_URI == "/appliances/"}Цена указана без скидки{/if} разместить дополнительную запись в ленте товаров, которая должна отображаться по адресу url мой-сайт/appliances/.

Конструкция работает только на основной странице и не работает на страницах с пагинацией, например, мой-сайт/appliances/?page=2, мой-сайт/appliances/?page=3 и т.д.

Вопрос: Как записать конструкцию ?page=2,3,4... в виде смарти, например, мой-сайт/appliances/{$page_number}, при которой будут динамически подставляться номера страниц пагинации при переходе и выводить дополнительную запись.

2 ответа

  • 1
    Павел 3 августа 2016 17:22 # Решение

    Вопрос решен с помощью вот такой конструкции:

    {if $cat.parent_id == "11"}Цена указана без скидки{/if}

    Благодаря чему дополнительный текст выводится только в разделе с id 11 и на всех страницах пагинации этого же раздела.

    • +1
      Павел Павел 3 августа 2016 20:09 #

      Единственное, что так и не получилось сделать, так это вывести текст в модальных окнах с быстрым просмотром товара. Если есть у кого-то решение, помогите реализовать.

  • 2

    лучше прицепитесь не к урлу а к айди категории/товара/сраницы - тогда будет все ок

    • +1
      Павел Павел 3 августа 2016 15:51 #

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

      Используем shop-script 7.

      • +2

        Сформулируйте четко задачу.

        что где хотите выводить - напишу код

        • +1
          Павел Павел 3 августа 2016 16:00 #

          http://elizaspb.ru/appliances/

          Перейдя по ссылке, вы попадете в ленту товаров раздела "Кухонная техника", где увидите дополнительные записи "Цена указана без скидки" под ценой выделенные красным цветом. Если листать пагинацию дальше, то эти записи перестанут выводиться, так как придется тогда делать множество конструкций, например:

          {if $smarty.server.REQUEST_URI == "/appliances/"}Текст{/if}
          {if $smarty.server.REQUEST_URI == "/appliances/?page=2"}Текст{/if}
          {if $smarty.server.REQUEST_URI == "/appliances/?page=3"}Текст{/if}
          {if $smarty.server.REQUEST_URI == "/appliances/?page=4"}Текст{/if}
          и т.д.

          Вопрос состоит в том, как сделать всего две или даже одну конструкцию, которая бы выводила дополнительную запись только для данного раздела и ко всем страницам пагинации этого же раздела.

          • +1

            Товары без скидки существуют только в одной категории? или можно зацепиться за тип товара или еще за что-нибудь?
            подумайте, какой идентификатор лучше выбрать для этих целей?
            можно прицепиться к категории, типу товара, характеристике или еще чему-нибудь

            • +1
              Павел Павел 3 августа 2016 16:34 #

              На сайте есть разные категории: кухни, кухонная техника, мойки, шкафы-купе и прочие. Подобную запись нужно вывести у всех товаров только раздела "кухонная техника". Текст должен выводиться: 1) в ленте товаров (пишу код тут list-thumbs.html), 2) в лайтбоксе с быстрым просмотром товара, 3) на странице с карточкой товара (пишу код тут product.cart.html).

              • +2

                тогда не все так просто. Товары могут находиться в категории или ее подкатегориях

                Почитайте эту тему. Думаю поможет

                id категории можете узнать в админке. когда находитесь в категории товара - в адресе страницы вверху видите ее айди

                • +1
                  Павел Павел 3 августа 2016 17:09 #

                  Сложно для меня пока разобраться в предложенной теме. Проще было бы записать конструкцию, где ссылка пагинации (?page=2) указана в виде динамичного смарти-объекта.

                  Т.е. примерно так:
                  {if $smarty.server.REQUEST_URI == "/appliances/"}Цена указана без скидки{/if}
                  {if $smarty.server.REQUEST_URI == "/appliances/{$page_number}"}Цена указана без скидки{/if}

                  *{$page_number}" - образный пример динамичной ссылки пагинации

                  • +1
                    Павел Павел 3 августа 2016 17:18 #

                    Разобрался! И всё же помогла предложенная вами тема!!! СПАСИБО!

Добавить ответ

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