Internationalization Views режет HTML теги

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

Аватар пользователя buldozer_kpi buldozer_kpi 4 марта 2020 в 16:15

Здравствуйте.
Использую для перевода представления модуль Internationalization Views. При выводе некоторых полей в представлении есть необходимость использовать теги style и button. Отображаются они нормально. Но если я делаю перевод этих полей, то модуль перевода просто удаляет эти теги при генерации страницы. Как победить эту проблему?

Комментарии

Аватар пользователя bumble bumble 4 марта 2020 в 17:40
1

1. Это не проблема. Соответственно, побеждать ее не нужно.
2. Для кастомизации, есть система шаблонизации. Ознакомьтесь с ней и применяйте без выдумывания проблем, с которыми потом будете пытаться воевать.

Аватар пользователя buldozer_kpi buldozer_kpi 4 марта 2020 в 18:05

Вопрос в том, что это витрина продуктов, и в зависимости товаров в стиль и кнопку подтягиваются определенные параметры. На языке оригинала все нормально, в переводе не работает. Не понимаю как эту историю темизировать.

Аватар пользователя bumble bumble 4 марта 2020 в 18:11
1

Начните с отхода от практики кастомизации HTML из настроек представлений.
Вынесите в шаблоны формирование вывода.
Вынесите в слой процессинга логику формирования вывода.
С помощью имеющихся средств, организуйте перевод.

Аватар пользователя buldozer_kpi buldozer_kpi 4 марта 2020 в 23:45

Хорошо. А как быть в ситуации, когда в заголовке представление в глобал пхп поле пишу сниппет подсчета количества товара. Потом перевожу это поле и в переводе стабильно пишет 0?

<?php
  $current_view 
views_get_current_view();
  
$countproduct intval($current_view->query->pager->total_items);
  print 
'<div class="result-search">Ми нашли для вас ' $countproduct ' ' pluralcar($countproduct) . '</div>';
?>

Результатом должно стать: "Ми нашли для вас 22 автомобиля" или "Ми нашли для вас 21 автомобиль". Функция pluralcar используется для склонения слова автомобиль в зависимости от количества.

Аватар пользователя VasyOK VasyOK 4 марта 2020 в 18:09

А можете скрины этого дела выложить? Того, что без перевода style подтягиявается, а с переводом - нет.
Работаю с данным модулем, но у себя проблем не наблюдаю.

Аватар пользователя buldozer_kpi buldozer_kpi 4 марта 2020 в 23:37

Без скрина приведу упрощенный пример.

Товар

- язык оригинала (код цвета может быть разным, присваивается товару вручную в специальное поле, а потом выводится в представлении).

Товар

- перевод. Из того что у меня используется, режет style, buttom.

Аватар пользователя buldozer_kpi buldozer_kpi 5 марта 2020 в 0:08

Сорри, и здесь резануло код ))
Без скрина приведу упрощенный пример.
<div class="tovar" style="background-color: #3cad2b;">Товар</div> - язык оригинала (код цвета может быть разным, присваивается товару вручную в специальное поле, а потом выводится в представлении).
<div class="tovar">Товар</div> - перевод. Из того что у меня используется, режет style, buttom.

Аватар пользователя buldozer_kpi buldozer_kpi 5 марта 2020 в 12:27

Немного начал разбираться с темизацией представлений. Но не понял один момент, у меня в одном поле выводится другое. Как я могу темизировать эту историю? Допустим представление имеет следующий вид:

field_field1
field_field2
field_field3
field_field4

Потом поле field_field3 переопределяю так <div class="tovar" style="background-color: [field_field2];">[field_field3]</div>

Как мне переписать шаблон поля field_field3 и подтянуть туда поле field_field2.

Аватар пользователя buldozer_kpi buldozer_kpi 5 марта 2020 в 23:13

Для конкретного ПОЛЯ field_field2 делаю шаблон views-view-field--field_field2.tpl.php. Могу ли я в этом шаблоне кроме текущего поля вывести поле, например field_field1? Если да, то как? Не нашел пока информации

Аватар пользователя buldozer_kpi buldozer_kpi 5 марта 2020 в 23:57

Это уже для меня вне моих знаний. Какая цена вопроса решения моей задачи, будь-то костыль для модуля перевода, либо темизация поля?

Аватар пользователя bumble bumble 6 марта 2020 в 0:05

Опубликуйте пост с запросом и объяснением требуемого решения в соответствующем разделе текущего форума.