Page 3 of 4

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Mon Apr 25, 2016 12:21 pm
by Japansimpson
На странице
http://domain.com/de/category/anal
print_r показывает
[force_lng] => ru

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Mon Apr 25, 2016 12:23 pm
by admin
Откуда то оно же это берет - ищите где у вас может подставляться этот ру.
Может в комон например.

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Sun May 01, 2016 9:11 pm
by Japansimpson
В коммон нету ничего, чтобы язык подменяло. Возможно в хтаксессе косяк. Вставил в начало рекомендованные строки

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]{2})/(.*)$ $2?force_lng=$1&%{QUERY_STRING} [L]

потом есть строка
RewriteRule ^category/([^/]+) scj/tube/index.php?order=ctr&group_name=$1&page=1 [L]
Может нужно и в неё еще что-нибудь дописать? А то ведь:

http://site.com/de/
print_r($_GET); показывает [force_lng] => de

http://site.com/de/category/anal
print_r($_GET); показывает [force_lng] => ru

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Mon May 02, 2016 3:03 am
by admin
RewriteRule ^category/

и это единственный реврайт такой ?
и точно нет в коммон ?

Тогда не знаю, скидывайте фтп.

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Mon May 02, 2016 9:35 am
by Japansimpson
Скинул доступы в ПМ.

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Wed May 04, 2016 2:30 pm
by admin
Так у вас там реврайты совсем не такие
Точнее они переделаны относительно дефолтных и переделаны неправильно
я поправил что б показывало нужный язык, но полагаю оно у вас и клики не считает

рекомендую оборатить внимание на дефолтные реврайты

http://smartcj.com/wiki/doku.php?id=ru:tcms_install

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Wed May 25, 2016 9:50 pm
by Japansimpson
Поправил хтаксесс - всё заработало, спасибо большое.

Этот домен был на ТЦМС, скопировал темплейт на другой домен на 51 версии - не работает форсированный перевод меню:
http://domain.com/ - показывает меню сайта на языке браузера (ру).
http://domain.com/de/ - меню сайта показывается всё равно на языке браузера (ру)

Т.е. язык то браузера определило, все кеи подставило русские, но форсированно на другой язык не переводит.

Пробовал скопировать на другой домен на ТЦМС - работает норм. Вопрос возникает - перевод этот, i18, чтобы работал на 51 версии нужно как-то переделывать, или нет?

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Thu May 26, 2016 5:30 am
by admin
А какой сейчас код для перевода ?

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Thu May 26, 2016 10:34 am
by Japansimpson
а) С кодом, как в тцмс - не переводит, всё время язык браузера - русский:

if ($_GET['force_lng'] and isset($my_keywords[$_GET['force_lng']])) {
setcookie('force_lng', (isset($_GET['force_lng']) ? $_GET['force_lng'] : ''), time() + 86400);
$lang = $my_keywords[$_GET['force_lng']];
} elseif ($_COOKIE['force_lng'] and isset($my_keywords[$_COOKIE['force_lng']])){
$lang = $my_keywords[$_COOKIE['force_lng']];
}

б) с кодом, как на странице http://smartcj.com/wiki/doku.php?id=ru: ... _сайта_i18 - не переводит, всё время язык браузера - русский:

if ($_GET['force_lng'] and isset($my_keywords[$_GET['force_lng']])) {
setcookie('force_lng', $_GET['force_lng'], time() + 86400);
$lang = $my_keywords[$_GET['force_lng']];
} elseif ($_COOKIE['force_lng'] and isset($my_keywords[$_COOKIE['force_lng']])){
$lang = $my_keywords[$_COOKIE['force_lng']];
}

в) с кодом, как на странице http://smartcj.com/wiki/doku.php?id=ru: ... gual_sites - не переводит, всё время английский язык:

if ($_GET['force_lng'] and isset($my_keywords[$_GET['force_lng']])) {
setcookie('force_lng', $_GET['force_lng'], time() + 86400);
$lang = $my_keywords[$_GET['force_lng']];
} elseif ($_COOKIE['force_lng'] and isset($my_keywords[$_COOKIE['force_lng']])){
$lang = $my_keywords[$_COOKIE['force_lng']];
} else $lang = $my_keywords['en'];

Re: Перевод меню сайта ( i18 ): форсированно не переводит.

Posted: Thu May 26, 2016 1:08 pm
by admin
if ($_GET['force_lng'] and isset($my_keywords[$_GET['force_lng']])) {
setcookie('force_lng', (isset($_GET['force_lng']) ? $_GET['force_lng'] : ''), time() + 86400);
$lang = $my_keywords[$_GET['force_lng']];
} elseif ($_COOKIE['force_lng'] and isset($my_keywords[$_COOKIE['force_lng']])){
$lang = $my_keywords[$_COOKIE['force_lng']];
}

первый же код вполне ок

перед кодом вставьте print_r($_GET);

есть там переменная языка ?