Перейти к содержанию
  • Создаём свою ленту тем для каждого форума


     Официально

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

    Данная возможность 'из коробки' отсутствует, т.к. если разместить блок, например популярных тем, на странице форума, то на страницах всех форумов блок будет отображать одни и те же темы.

    Однако, Invision Community не настолько однообразен, чтобы не справиться с такой задачей, в данном случае - с помощью HTML логики.

    Создание условных блоков

    Реализовать данную функцию мы можем с помощью условного блока, который будет некоторой оболочкой других блоков. Этот блок-оболочка будет получать служебную информацию со страницы и отображать на её основе нужный нам блок.

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

    img.PNG

     

    После этого создаём наш блок-обёртку, Тип которого должен быть Блок, а редактор - HTML. В содержимое блока вставим код:

    {{if request.app == 'forums' && request.module == 'forums'}}
    	{{$id = \IPS\Request::i()->id;}}
    	{block="forum_{$id}"}
    {{endif}}

    Здесь мы с помощью условия проверяем приложение и модуль 'forums' на странице, которые указывают на то, что пользователь находится на страницах форума. Затем мы используем тег {block="forum_{$id}"}, который подставит блок тем с ID, взятым со страницы.

    Осталось сохранить блок и перенести его на страницу просмотра тем форума с помощью менеджера блоков. Если у вас есть интересные идеи создания нестандартных блоков, поделитесь ими в комментариях!





    Обратная связь


    Комментариев нет



    Присоединяйтесь к обсуждению

    Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
    Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

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

    ×   Вставлено с форматированием.   Вставить как обычный текст

      Разрешено использовать не более 75 эмодзи.

    ×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

    ×   Ваш предыдущий контент был восстановлен.   Очистить редактор

    ×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

    Загрузка...

×
×
  • Создать...

Важная информация

Используя наш сайт вы соглашаетесь с нашей Политикой конфиденциальности