Шаблонные переменные в phpBB

Ответить
Аватара пользователя
southklad_3.2
Администратор
Сообщения: 20
Зарегистрирован: 19 мар 2017, 19:48

Шаблонные переменные в phpBB

Сообщение southklad_3.2 »

Имя переменной может начинаться с:

S_ (от switch) - переключатели.
U_ (от url) - ссылки.
L_ (language) - языковые переменные.

Языковые переменные:

{SITENAME} - выводит название форума, прописанное в админке
{SITE_DESCRIPTION} - описание форума, прописанное в админке
{PAGE_TITLE} - выводит заголовок страницы

Пути:

{T_TEMPLATE_PATH} - заменяется на ./styles/ваш_стиль
{T_THEME_PATH} - заменяется на ./styles/ваш_стиль/theme
{T_STYLESHEET_LINK} - заменяется на ./style.php
{T_IMAGESET_PATH} - заменяется на ./styles/ваш_стиль/imageset
Условные конструкции:

<!-- IF not S_IS_BOT -->
текст, который не увидят боты
<!-- ENDIF -->

<!-- IF S_USER_LOGGED_IN -->
текст, который увидят только зарегистрированные пользователи
<!-- ENDIF -->

USER_IGNORE - боты + гости

Если в переменную $template->assign_vars в нужном файле добавить следующий код:

Код: Выделить всё

'IS_ADMIN'        => ($auth->acl_get('a_')) ? true : false,
        'IS_MOD'        => ($auth->acl_getf_global('m_')) ? true : false,
        'IS_GLOBAL_MOD'    => ($auth->acl_get('m_')) ? true : false, 
то можно будет использовать следующие конструкции:

<!-- IF IS_ADMIN -->
текст, который увидят только администраторы
<!-- ENDIF -->

<!-- IF IS_MOD -->
текст, который увидят только модераторы
<!-- ENDIF -->

<!-- IF IS_GLOBAL_MOD -->
текст, который увидят только супермодераторы
<!-- ENDIF -->

<!-- IF SCRIPT_NAME == "viewtopic" -->
Контент, показываемый только на vietopic.php
<!-- ELSEIF SCRIPT_NAME != "index" and SCRIPT_NAME != "viewforum" -->
Контент, не показываемый нигде, кроме index.php и vietopic.php
<!-- ENDIF -->

Объединение условных конструкций:

<!-- IF not S_IS_BOT and S_USER_LOGGED_IN -->
текст, который не увидят боты, и увидят только залогиненные пользователи
<!-- ENDIF -->

Группы:

<!-- IF S_GROUP_1 and S_GROUP_2 -->

<!-- IF not S_GROUP_2 -->

Внедрение в код:

Код: Выделить всё

<?php
if ($user->data['group_id'] == 5)
{
    echo
    "message for administrators";
}
elseif ($user->data['group_id'] == 4)
{
    echo
    "message for moderators";
}
?>


Ответить