1. Создал при помощи модуля views схему для главной страницы по предлагаемому им-же шаблону, немного его видоизменив
2. Указал в настройках путь к главной странице "frontpage"
3. Создал статью и её перевод
4. Опубликовал статью и разместил её на главной
5. При заходе на главную показываются тизеры обоих на языках
Как пофиксить?
Я так предполагаю что к views нужно добавить фильтр типа "если язык статьи равен текущему выбранному языку" но вот как это сделать?
З.Ы. В настройках i18n указано показывать контент в текущем языке и без языка (первый вариант в списке)
Комментарии
В общем, судя по материалам drupal.org эту проблему пока никто не решил.
Я тут поковырялся и придумал довольно простую заплатку, которая повисит у меня пока модули i18n и views не подружатся.
1. Создаём словарик Languages без указания языка
2. Выбираем в списке контент, который подлежит переводу и может быть выведен на главную
3. Ставим флаг "Обязательно"
4. Создаём в нём термин RU в русском языке, термин EN в английском, etc (по количеству используемых языков)
5. Создаём клоны frontpage при помощи views и вешаем их на пути ru/frontpage, en/frontpage, etc...
6. В каждой frontpage добавляем фильтр: Если выбран тег словаря Languages "RU" - для русского, "EN" - для английского, etc...
7. Заходим в admin/settings и указываем что у нас стартовая страница будет по адресу frontpage
8. Создаём новый материал и видим что в зависимости от выбранного языка материала у нас автоматически выбирается соответствующий термин словаря Languages по которому и будет происходить отбор материала для главной страницы.
Т.о. мы получили автоматическую установку тега на новом контенте в зависимости от выбранного языка что даёт нам возможность фильтровать этот контент модулем views.
Шото лыжи не едут
Вроде как всё правильно сделал, терм таксономии нормально раздаётся, но views по нему не фильтрует... Всё-ли я правильно делаю?
Filters
Taxonomy: Terms for Language - As all of - RU
В общем с фильтрами не разобрался, прибегнул к хардпатчу (есть на drupal.org но говорят что не тестили на предмет безопасности):
+++ modules/i18n/i18n.inc 2006-08-09 20:46:39.093750000 -0400
@@ -44,6 +44,7 @@ function i18n_db_rewrite_sql($query, $pr
switch ($primary_table) {
case 'n':
+ case 'node':
// Node queries
return i18n_db_node_rewrite($query, $primary_table, $primary_key, $mode);
case 't':