XF 1.5 render template xenforo

xsacha

Только чтение
Сообщения
1,262
Реакции
1,392
Баллы
11,350
Подскажите как можно вывести меню в настройках в котором можно было бы перебирать шаблоны ?
К примеру мне надо чтобы в <div></div> подставлялся шаблон sidebar_new_posts, sidebar_profile_post_list и т.д. Другими словами чтобы можно было их выбирать в настройках и они подставлялись в нужное место.
 
Сделать массив и в дивах ссылка на настройку.
А можно пример привести или хотя бы сказать приложение где можно посмотреть реализацию данного примера ?
 
Последнее редактирование:
Подскажите как можно вывести меню в настройках в котором можно было бы перебирать шаблоны ?
К примеру мне надо чтобы в <div></div> подставлялся шаблон sidebar_new_posts, sidebar_profile_post_list и т.д. Другими словами чтобы можно было их выбирать в настройках и они подставлялись в нужное место.
.создаём настройку с ID, например, templateDivOpt с
Screenshot_1.png
настройками.
И в этом это блоке пишем такой код <xen:include template="{$xenOptions.templateDivOpt}" />, готово.
 
можно и меню выбор
.через меню выбора будет больше запар. Но ладно:
То же самое, только настройка с такими параметрами:
Screenshot_2.png
И в шаблоне такой код:
Код:
<xen:if is="{$xenOptions.templateDivOpt} == 1">
<xen:include template="sidebar_new_posts" />
<xen else />
<xen:include template="sidebar_profile_post_list" />
</xen:if>
Ну или если более двух условий
Код:
<xen:if is="{$xenOptions.templateDivOpt} == 1">
<xen:include template="sidebar_new_posts" />
<xen elseif is="{$xenOptions.templateDivOpt} == 2" />
<xen:include template="sidebar_profile_post_list" />
<xen:else />
<xen:include template="random_template" />
</xen:if>
 
И в этом это блоке пишем такой код <xen:include template="{$xenOptions.templateDivOpt}" />, готово.
Мне как раз такое и надо перебирать шаблоны, но вот вопрос ты пробовал такое условие сохранить ? И что XF написал, вот у меня ошибку, собственно что и в самом начале и пытал сделать перед вопросом.
Перебирать шаблоны я пока так и смог условиями и полагаю безе php это не получится, единственное, что только смог решить это добавить в виджетфремворк свой шаблон для выбора, после этого многие задачи упрощаются в плане выбора место положения на боковой панели, а вот шаблоны пока под вопросом.
 
Последнее редактирование:
так зачем такую конструкцию делать, все тоже самое как и со строкой :-)
Пчел но такие условия не сохранятся в XF. Мне надо чтобы тут
Код:
<xen:include template="sidebar_profile_post_list" />
вместо sidebar_profile_post_list был шаблон 1, 2 и так далее

Там просто при выборе будет меняться значение
При сохранения такого XF тебе напишет:
Код:
Данный шаблон содержит ошибки и не может быть сохранён: 007: 007 - Строка 1: Ошибка в имени при подключения шаблона. Название шаблона должно состоять только из букв.
007 - название тестового шаблона.
 
Пчел но такие условия не сохранятся в XF. Мне надо чтобы тут
.тогда
.через меню выбора будет больше запар. Но ладно:
То же самое, только настройка с такими параметрами:
Посмотреть вложение 71306
И в шаблоне такой код:
Код:
<xen:if is="{$xenOptions.templateDivOpt} == 1">
<xen:include template="sidebar_new_posts" />
<xen else />
<xen:include template="sidebar_profile_post_list" />
</xen:if>
Ну или если более двух условий
Код:
<xen:if is="{$xenOptions.templateDivOpt} == 1">
<xen:include template="sidebar_new_posts" />
<xen elseif is="{$xenOptions.templateDivOpt} == 2" />
<xen:include template="sidebar_profile_post_list" />
<xen:else />
<xen:include template="random_template" />
</xen:if>
 
Ну или если более двух условий
<xen:if is="{$xenOptions.templateDivOpt} == 1">
<xen:include template="sidebar_new_posts" />
<xen elseif is="{$xenOptions.templateDivOpt} == 2" />
<xen:include template="sidebar_profile_post_list" />
<xen:else />
<xen:include template="random_template" />
</xen:if>
Но вот это я как раз и хотел сократить, чтобы меньше было кода. Но полагаю такое можно сделать только через php.
 
.при сохранении
Screenshot_1.png

Но вот это я как раз и хотел сократить, чтобы меньше было кода. Но полагаю такое можно сделать только через php.
.никак. В xen:include template не запихнуть переменную
 
Это понятно но сюда так:
Код:
<xen:include template="{$xenOptions.template}" />
Ты не впишешь XF не даст сохранит, у меня тестовая машина перед глазами и пишет ошибку, я уже так хотел сделать в первую очередь.

.никак. В xen:include template не запихнуть переменную
Верно мы же не новички в написании такого, в первую очередь каждый пробует элементарное. Только php и все и рендерить видимо.
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу