Перевод отдельных полей

Далеко не все типы контента требуют полного перевода. Например, тип контента Продукт имеет такие поля как цена, изображение, производитель. Эти поля не требуют перевода. А заголовок и описание – требуют. Кроме того, когда продукт покупают, он отслеживается. Если этот тип контента будет переведен полностью, то мы получим статистику о том сколько человек совершили покупку, использую тот или иной язык интерфейса. Это не совсем то, что нам нужно, мы хотим знать, сколько экземпляров продукта было продано всего.

Параметры сущности

  • Установите и включите модуль Entity Translation (drupal.org/project/entity_translation)
  • Откройте страницу Конфигурация – Регион и язык – Языки – Определение и выбор и обновите настройки так, чтобы секция Способ определения языка: Содержимое соответствовала секции Способ определения языка: Текст пользовательского интерфейса.
  • При необходимости измените порядок элементов. Убедитесь, что элементы в обеих секциях выбраны правильно.
  • Сохраните настройки
  • Теперь вам нужно поменять ваш текущий блок переключателя языка, называемый  Переключатель языка (Текст пользовательского интерфейса) на новый Переключатель языка (Содержимое). Для этого откройте страницу Структура – Блоки, отключите один блок и подключите другой. Если этого не сделать, то переключатель не будет работать корректно.
  • Чтобы включить сущности в перевод откройте страницу КонфигурацияРегион и язык – Перевод сущностей (admin/config/regional/entity_translation) и установите нужные отметки в секции Переводимые типы сущностей
     
  • Сохраните настройки

 

Параметры типа контента

При настройке параметров типа контента нужно выбрать тип содержимого для перевода поля и затем выполнить следующие действия:

  • Откройте страницу настройки типа контента, например Статьи (Структура – Типы материалов – Статья - Правка)
  • Откройте вкладку Настройки публикации и в секции Поддержка многоязычности выберите опцию Enabled, with field translation (Включить и разрешить перевод полей)
  • Нажмите кнопку Сохранить тип материала
  • Теперь нужно решить, какие поля переводить.
     

Интересная ситуация с полем Title (Заголовок). Дело в том, что в Drupal 7, Title не является полем как таковым, это, по своей сути, свойство. Это является проблемой при переводе полей, так как нам нужно перевести Заголовок материала.

Чтобы решить эту проблему, установите и включите модули Title (drupal.org/project/title) и  Entity API (drupal.org/project/entity).

  • Откройте страницу Управление полями нужного типа материалов.
  • Щелкните по ссылке заменить, которая появилась у поля Title
  • Установите отметку Заменить title экземпляром поля
  • Нажмите кнопку Сохранить настройки
  • Теперь заголовок превратился в текстовое поле.
  • Вернитесь на страницу Управление полями и щелкните по ссылке изменить для поля Body. В самом низу страницы вы увидите секцию Поле перевода. В зависимости от сделанных ранее настроек, в этой секции будет разная информация. Здесь вы можете включить, либо отключить перевод для данного поля.