В данном разделе описаны настройки плгина `i18n` (идет в базовой поставке), для обеспечения следующих возможностей:
Итак, давайте разберемся что нам для этого потребуется:
1
2
3
|
en|English nl|Nederlands de|Deutsch |
1
2
3
4
5
6
7
8
9
10
11
12
|
<!-- Меню выбора перевода --> <!-- BEGIN: I18N_LANG --> {PHP.L.Language}: < ul > <!-- BEGIN: I18N_LANG_ROW --> < li >< a href = "{I18N_LANG_ROW_URL}" >{I18N_LANG_ROW_TITLE}</ a ></ li > <!-- END: I18N_LANG_ROW --> </ ul > <!-- END: I18N_LANG --> <!-- Кнопки управления --> {PAGE_I18N_TRANSLATE} {PAGE_I18N_DELETE} |
1
2
3
4
5
6
7
8
9
|
<!-- BEGIN: I18N_LANG --> < ul > <!-- BEGIN: I18N_LANG_ROW --> < li > < a href = "{I18N_LANG_ROW_URL}" title = "{I18N_LANG_ROW_TITLE}" >< img src = "images/flags/{I18N_LANG_ROW_FLAG}.png" alt = "{I18N_LANG_ROW_CODE}" /></ a > </ li > <!-- END: I18N_LANG_ROW --> </ ul > <!-- END: I18N_LANG --> |
Вот и все.
Добавление:
8. Если на вашем сайте используется плагин `urlreditor`, то стоит проверить наличие следующей строки в файле `.htaccess`:
# Language selector RewriteRule ^(ru|ua|en|de|nl)/(.*) $2?l=$1 [QSA,NC,NE,DPI] |
Если вы его устанавливали по инструкции, то строка скорее всего в вашем файле имеется, т.к. она есть в шаблоне `sef-urls.htaccess`.
Если вы добавляете язык отличный от указанных в списке (ru|ua|en|de|nl), то просто добавьте его туда через разделитель `|`.
Плагин i18n не имеет настройки для задания отдельных заголовка и описания сайта (meta description, title) для каждого из языков. Но это можно исправить в 2 счета:
$cfg [ 'maintitle' ]= 'maintitle-en' ; $cfg [ 'subtitle' ]= 'subtitle-en' ; |
Для единообразия отображения заголовков переведенных страниц в категории system
добавляем в языковые файлы темы следующую строку:
if ( strtolower ( $_GET [ 'c' ]) == 'system' ) $cfg [ 'page' ][ 'title_page' ] = '{TITLE}' ; |
Расположение файла, формирующего шаблон страницы:
themes/cotcom/modules/page/page.tpl