Вывод информации только на определённых страницах сайта Есть решение

Уважаемые Профи, подскажите пожалуйста, как вывести информацию только на определённых страницах сайта (Именно приложения Сайт)?


Структура моих страниц сайта такая:


site.ru/page1/page2/page3/


Вот мне нужно вывести информацию только на всех страницах 3-го уровня, т.е. /page3/


Как это сделать? Подскажите пожалуйста?


--------------------------------------------


Не к теме, но кому интересно: вообщем на всех страницах 3-го уровня с названием page3 мне нужно вписать тег noindex (в моём проекте только эти страницы 3-го уровня не должны попасть в индекс), вот для чего мне это нужно.


3 ответа

  • 2
    Михаил Ушенин Webasyst 11 июля 2018 13:01 # Решение

    Так должно сработать для страниц 3-го и более глубокого уровня — без доп. параметров:

    {if !empty($breadcrumbs) && count($breadcrumbs) > 1}
        ...
    {/if}
    

    • +1
      Владимир Владимир 11 июля 2018 13:17 #

      Михаил - спасибо! Работает всё! Хотел сразу на будущее узнать - а для конкретной страницы приложения Сайт можно как-то обратиться?

      • +1

        Куда обратиться? Что вы имеете в виду?

        • +1
          Владимир Владимир 11 июля 2018 17:46 #

          Например мне нужно вывести информацию уже не на всех страницах 3-го уровня, а только на определённых страницах 2-го уровня?

          • +2

            Добавьте доп. параметр в свойствах страницы, например

            special=1

            В шаблоне page.html используйте условие

            {if $page.special}
            ...
            {/if}

            • +1
              Владимир Владимир 11 июля 2018 18:14 #

              Вот почему webasyst выбирали, выбирают и будут выбирать тысячи клиентов - потому что на webasyst можно сделать всё, что угодно - в очередной раз в этом убеждаюсь + отличная поддержка, Михаил - ещё раз спасибо!!!

  • 1
    Владимир 10 июля 2018 20:33 #

    Друзья, так как же мне вывести информацию только на нужных страницах сайта?

    Может кто из webasyst подскажет, ведь только Вы лучше знаете свой фреймворк (эксперты молчат).

    Вот смотрите что у меня есть (но эти коды не для сайта, а для магазина):

    Вывести информацию везде, кроме главной:
    {if $wa_url != $wa->currentUrl(0,1)}
    ...
    {/if}

    Вывести информацию только на главной:
    {if isset($frontend_homepage)}
    ...
    {/if}

    Вывести информацию везде, кроме страниц категорий:
    {if $action !== 'category'}
    ...
    {/if}

    Вывести информацию только на страницах категорий:
    {if $action == 'category'}
    ...
    {/if}

    Вывести информацию везде, кроме страниц товаров:
    {if $action !== 'product'}
    ...
    {/if}

    Вывести информацию только на страницах товаров:
    {if $action == 'product'}
    ...
    {/if}

    {if !in_array($action, ['default', 'cart', 'checkout'])}
    информация всех страницах кроме главной, корзины, оформления
    {/if}

    Вопрос:

    Так как-же вывести информацию только на нужных страницах приложения сайт?!

    -------------------------

    webasyst - поздравляю с новым дизайном сайта! Дизайн сайта webasyst.ru получился современный, молодцы!

    • +1
      greencity116 greencity116 10 июля 2018 21:51 #

      1. Не элегантное решение: можно в этих страницах прописать доп параметры и фильтровать страницы по ним.

      2. Страницы 3 уровня без каких-либо модификаций выделяются тем, что имеют url вида

      /lvl1/lvl2/lvl3/

      Можно отсеять их по preg_match например в цикле, но это увеличит время обработки страницы. Можно из $page.

      В идеале отредактировать сам код в php файлах...

      Как вариант вот так:

      {$b={$page.route|substr:0:-1}}{$a={$page.full_url}}{$c="/"}
      {assign var="fullurl" value="{$c}{$b}{$a}"}
      {$cnt=$fullurl|substr_count:'/'}
      {if $cnt==4}
      Это страница 3 уровня
      {/if}

      Работает, но думаю можно сделать лучше.

  • 1
    Владимир 11 июля 2018 12:20 #

    Кстати, решение от greencity116 работает, но не во всех темах дизайна, заработало только в одной теме, и код прописывал не в php файлах. greencity116 всё равно спасибо, хотя-бы так!

    А можно ещё как-то грамотнее сделать через доп. параметры страницы?

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

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