1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

Как заменить шаблон из плагина?

Тема в разделе "Вопросы и ответы по XenForo Framework", создана пользователем NIc, 12.11.2011.

Загрузка
  1. NIc

    NIc Пользователь

    Регистрация:
    11.11.11
    Сообщения:
    16
    Симпатии:
    6
    Возьмем шаблон - например - thread_list_item - у меня есть сообственный - my_thread_list_item, как заставить систему при установки плагина использовать мой шаблон вместо оригинального?
     
  2. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    А нельзя основной шаблон просто вашим перезаписать?
     
  3. NIc

    NIc Пользователь

    Регистрация:
    11.11.11
    Сообщения:
    16
    Симпатии:
    6
    Можно конечно, я так и сделал. Но задача стоит в том, чтобы написать плагин, который бы, при установки, подменял некторые шаблоны.

    Я знаю как это сделать (обновить шаблон обращение к базе данных), но это как мне кажется сложно.
    Было бы лучше, если бы можно было бы подменять любой шаблон через хуки.
    Как я понимаю, сейчас это можно сделать только для некоторых.
     
  4. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5 746
    Симпатии:
    5 311
    Версия XF:
    1.5.18
    Я не программист. Но раз вы в состоянии написать плагины, то что мешает поковыряться в любом готовом плагине и глянуть, как сделано там? При написании плагина не существует проблем приделать к нему любое количество своих собственных шаблонов.
     
  5. NIc

    NIc Пользователь

    Регистрация:
    11.11.11
    Сообщения:
    16
    Симпатии:
    6
    да как-то я не нашел нужный плагин... перерыл десяток, в основном они что то добавляют, создают сообственные страницы, что то еще... А мне надо просто надписть по названием топика добавить.
    И есть такой шаблон thread_list_item, этот шаблон как раз и рисует то что надо. И вот как его заменить из плагина?
     
  6. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Если не ошибаюсь, то для этого потребуется написать свою модель. С нуля ее писать не придется, нужно будет лишь расширить. В принципе там, как я понимаю, потребуется переписать только рендерер, который как раз и будет брать именно Ваш шаблон, а не дефолтный.

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

    Первый вариант позволит обойтись без модификации оригинального шаблона, а второй - простой, но с модификациями.

    P.S. Я сам не пробовал писать свои модели и классы, но можно покопаться в плагинах и найти что-нибудь для примера.
     
  7. NIc

    NIc Пользователь

    Регистрация:
    11.11.11
    Сообщения:
    16
    Симпатии:
    6
    Насчет модели, хорошая идея, надо попробовать...

    Но пока я меняю базовый темплайт :-(
     
  8. NIc

    NIc Пользователь

    Регистрация:
    11.11.11
    Сообщения:
    16
    Симпатии:
    6
    А есть примеры? Потому что как то тут все не понятно...
     
  9. infis

    infis Местный

    Регистрация:
    27.06.11
    Сообщения:
    5 966
    Симпатии:
    3 548
    Версия XF:
    1.5.9
    Примеры в уже написанных плагинах. Как такового руководства разработчика нет.
     

Поделиться этой страницей