[Решено] Таксономия + мультиязычный сайт

Главные вкладки

Аватар пользователя sasha_gar sasha_gar 2 февраля 2013 в 15:02

Здрасьте всем.
СТоит друпал 7. Сайт двуязычный. Язык по умолчанию стоит русский.
Создал словарь с терминами. Поставил ему, чтобы переводился словарь и термины.
Создаю вьюшку с раскрытым фильтром по таксономии. Также ставлю условие показывать содержимое в зависимости от языка. Не могу понять почему не срабатывают переводы для терминов.
Смотрите скрины. (округа москвы и есть термины)
Мне надо чтобы и термины отображались на английском.
Заранее благодарен

UPD:
Переводы у терминов стоят. Когда создаешь ноду на английском языке, то эти округа они отображаются на английском языке. Вот почему при формировании вьюшки-блока переводы некорректно отображаются.

ВложениеРазмер
Иконка изображения Сайт на английском3.92 КБ
Иконка изображения Сайт на русском3.68 КБ

Комментарии

Аватар пользователя sasha_gar sasha_gar 2 февраля 2013 в 15:19

xSPiRiTx wrote:
а модуль для перевода таксономии включен? посмари внимательно там

Конечно включен. Я же этим терминам перводы поставил.

Аватар пользователя sasha_gar sasha_gar 6 февраля 2013 в 23:51

В общем нашел решение на drupal.org http://drupal.org/node/1402458#comment-5678210. Только этот код чуток подправил. В файл template.php пишем

<?php 
    
function MY_THEME_preprocess_views_exposed_form(&$vars) {
      if (
$vars['form']['#id'] == 'views-exposed-form-rent-page' && function_exists('i18n_taxonomy_term_name')) {
        global 
$language;
        
$langcode $language->language;
        foreach(
$vars['form']['tid']["#options"] as  $term_id => $value) {
          
$term taxonomy_term_load($term_id);
          
$vars['form']['tid']["#options"][$term_id] = i18n_taxonomy_term_name($term$langcode);
        }
        unset(
$vars['form']['tid']['#printed']);
        
$vars['widgets']['filter-tid']->widget drupal_render($vars['form']['tid']);
      }
    }
?>
Аватар пользователя Stanislav_B Stanislav_B 10 ноября 2014 в 19:55

sasha_gar wrote:
В общем нашел решение на drupal.org http://drupal.org/node/1402458#comment-5678210. Только этот код чуток подправил. В файл template.php пишем

<?php 
    
function MY_THEME_preprocess_views_exposed_form(&$vars) {
      if (
$vars['form']['#id'] == 'views-exposed-form-rent-page' && function_exists('i18n_taxonomy_term_name')) {
        global 
$language;
        
$langcode $language->language;
        foreach(
$vars['form']['tid']["#options"] as  $term_id => $value) {
          
$term taxonomy_term_load($term_id);
          
$vars['form']['tid']["#options"][$term_id] = i18n_taxonomy_term_name($term$langcode);
        }
        unset(
$vars['form']['tid']['#printed']);
        
$vars['widgets']['filter-tid']->widget drupal_render($vars['form']['tid']);
      }
    }
?>


Спасибо большое за решение, немного подправил под свою структуру сайта и подошло

Аватар пользователя sasha_gar sasha_gar 1 мая 2013 в 6:21

Вы свой код покажите. И скажите какие насройки поставили для перевода таксономии.
Ну и ezposed filter настройки гляньте, там у вас как я понял все языки вывелись. МОжет во вьюшке самой проблема.

Аватар пользователя umkasanki umkasanki 10 ноября 2015 в 11:49

так, заработало (исп модуль от arsunit)
теперь другой косяк, в выпада.щем списке - словарь на всех языках sanilly.lt

настройки мультиязычности словаря

настройки фильтра в представлении

спасибо за помощь

Аватар пользователя cmmndr cmmndr 13 июня 2013 в 0:13

"umkasanki" wrote:
так же пробовал решение отседава arsunit.org

модуль не выложите? а то на странице по ссылке нет ни чего.

ни как не могу решить эту проблему тоже((