Понадобилось на одном форуме сделать более расширенную мультиязычность.
Т.е. что бы в зависимости от выбранного языка отображались определенные категории.
Решается достаточно просто.
Создадим два новых шаблона для каждой локализации:
my_en_lang.css
my_ru_lang.css
где, например, node_1 - ID раздела, который НЕ нужно отображать в выбранной локализации.
Теперь создадим модификацию шаблона PAGE_CONTAINER
Найти:
Заменить:
В результате гости видят разделы на всех языках. А авторизованные видят категории в зависимости от выбранного языка в настройках.
Если хотите сделать, что бы и гости видели категории в зависимости от языка, то замену в модификации используйте такую:
Т.е. что бы в зависимости от выбранного языка отображались определенные категории.
Решается достаточно просто.
Создадим два новых шаблона для каждой локализации:
my_en_lang.css
Код:
.node.category.level_1.node_1,
.node.category.level_1.node_2,
.node.category.level_1.node_3,
.node.category.level_1.node_4
{
display: none;
}
Код:
.node.category.level_1.node_5,
.node.category.level_1.node_6,
.node.category.level_1.node_7,
.node.category.level_1.node_8
{
display: none;
}
Теперь создадим модификацию шаблона PAGE_CONTAINER
Найти:
Код:
<!--XenForo_Require:CSS-->
Код:
<xen:if is="!{$visitor.user_id}">
<xen:else />
<xen:if is="{$visitorLanguage.language_code} == 'ru-RU'">
<link rel="stylesheet" href="css.php?css=my_ru_lang&style={xen:urlencode $_styleId}&dir={$visitorLanguage.text_direction}&d={$visitorStyle.last_modified_date}" />
<xen:else />
<link rel="stylesheet" href="css.php?css=my_en_lang&style={xen:urlencode $_styleId}&dir={$visitorLanguage.text_direction}&d={$visitorStyle.last_modified_date}" />
</xen:if>
</xen:if>
$0
Если хотите сделать, что бы и гости видели категории в зависимости от языка, то замену в модификации используйте такую:
Код:
<xen:if is="{$visitorLanguage.language_code} == 'ru-RU'">
<link rel="stylesheet" href="css.php?css=my_ru_lang&style={xen:urlencode $_styleId}&dir={$visitorLanguage.text_direction}&d={$visitorStyle.last_modified_date}" />
<xen:else />
<link rel="stylesheet" href="css.php?css=my_en_lang&style={xen:urlencode $_styleId}&dir={$visitorLanguage.text_direction}&d={$visitorStyle.last_modified_date}" />
</xen:if>
$0