Views. Не выводит список терминов на украинской версии сайта
На сайте две языковые версии сайта: российская и украинская.
Вывод списка терминов настроен через представление (view).
Тип представления: Термин.
В российской версии сайта выводит список терминов, а в украинской — нет. Как решить эту проблему?

Коментарі
i18?
Перевести термины на украинский язык
i18n cтоит. Перевод терминов не помогает. Точнее, помогает, но только если представление имеет тип «Материал» (с фильтром «Перевод материала: Content negotiation»), а если тип представления — «Термин», то каким-то странным образом показывает только первый термин.
Нужно вывести список терминов через представление (view), которое имеет тип «Термин».
ситуация странная, в таблице есть поле для языка, но фильтра для вьювс нет.
Вариантов решения несколько
1. Сделать 2 словаря для разных языков
2. Сделать патч для виевс (самый правильный вариант)
3. Написать модуль для правки запроса. В запрос добавить, например hook_views_query_alter
AND language = (%s)", $lang4. Написать свой модуль который добавляет нужный фильтр
5. Использовать снипет. Создать обычную страницу с содержимым на РНР и выводить снипет
ps. есть еще модули которые позволяют изменять запрос виевс, но я ними не пользовался, поэтому не рекомендую
1. Это было сделано до написания вопроса. Не помогает.
2. Можно, пожалуйста, по-подробнее?
3. Для проверки, при запросе
$query = "SELECT tid, name FROM {term_data} WHERE language = 'ua' ORDER BY name ASC";на русской версии сайта выводит список без проблем, а на украинской — не выводит ничего.
Даже при запросе
$query = "SELECT tid, name FROM {term_data} ORDER BY name ASC";тоже аналогичная ситуация.
В чем может быть проблема?
Украинский это uk
language = 'uk'Даже при запросе
$query = "SELECT tid, name FROM {term_data} ORDER BY name ASC";
тоже аналогичная ситуация.
как так? а в базе вообще есть термины?
У меня — это «ua».
В таблице «term_data» есть термины и русские и украинские.
тогда этого не может быть!
Если ты прямо в таблице видишь что термины в ней есть и что там ua, тогда этот запрос должен вернуть результат
$query = "SELECT tid, name FROM {term_data} WHERE language = 'ua' ORDER BY name ASC";Убираю фигурные скобки ввожу в phpMyAdmin и он мне дает результат и Друпал тоже должен дать результат. Сверяй дальше код, где-то закралась опечатка или ты чего-то не доделываешь.
Оказалось, что код вывода по ошибке писáл в не положенном месте. В общем решено проблему тем, что сделано вывод списка терминов для украинской версии сайта напрямую (через запрос). Для каждой из двух языковых версий терминов — свой словарь.
P.S. Ответы на комментарии ставятся не правильно!!! Это ответ на комментарий orb 26 січня, 2011 - 20:19
код мови - uk
через ua - цілком можливо, що і не працює...
п.2 подробнее
нужный тебе функционал делает подмодуль views/taxonomy
http://drupal.org/project/i18nviews
Мені в свій час допоміг ось цей модуль.
Дякую. Він мені теж допоміг, але не для виводу списоку термінів через views, який має тип «Термін».