PDA

Просмотр полной версии : вопросы по многоязычности


GAZok
20.08.2009, 22:12
Вопрос 1:
Как сделать чтобы в случае отсутствия перевода страницы на другой язык, кнопка переключения на этот язык не была активной? При чем кнопки переключения сделаны вот таким вот образом в отдельном РНР файле:
$flags = array();
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==0?$pointer_begin:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" target=_top onfocus="if(this.blur)this.blur()">En</a>'.($GLOBALS["TSFE"]->sys_language_uid==0?$pointer_end:"");
$flags[] = ' | ';
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==1?$pointer_begin:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=1" target=_top onfocus="if(this.blur)this.blur()">De</a>'.($GLOBALS["TSFE"]->sys_language_uid==1?$pointer_end:"");
$flags[] = ' | ';
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==2?$pointer_begin:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=2" target=_top onfocus="if(this.blur)this.blur()">Fr</a>'.($GLOBALS["TSFE"]->sys_language_uid==2?$pointer_end:"");

Вопрос 2:
Я вывожу картинку которая находится в Files. Но если добавить другую картинку в другой язык этой страницы, то все же выводится картинка с основного языка. Как подправить этот код чтобы выводились картинки в зависимости от поточного языка?
mainMenuImage.cObject = IMAGE
mainMenuImage.cObject.file {
import.field = media
import = uploads/media/
import.listNum = 1
}

void
22.08.2009, 02:21
Ответ на оба вопроса лежит в таблице pages_language_overlay. В ней хранятся языковые версии страниц.
1) Для переключения между языками есть стандартное HMENU со special=language, плюс несколько расширений. Посмотрите на то, как это сделано там.

2) field = media, это, фактически, запрос поля media в таблице pages. Поскольку media языковых разделов хранится в таблице pages_language_overlay, то запрос должен обращаться туда. Каким образом - я не знаю.