Вопрос к знатокам мультиязычности. Установлен i18n
Возможно ли переводить термины таксономии?
Если в настройках словаря выбрать
"Локализуется. Общие термины для всех языков, но их имена и описания могут быть локализованы." - можно перевести только название и описание термина. Но у термина есть еще поля.
Если вывбрать
"Переводится. Различные термины будут доступны для каждого языка, и они могут быть переведены." - переводятся все поля. Но, например, поля изображений переводить не нужно. Логотип бренда для всех языков одинаковый.
Как быть?
Комментарии
При первом варианте у Вас нет в настройках полей (в самом низу) Field translation. Users may translate all occurrences of this field: ... ???
Есть. Но при переводе термина все равно можно указать только Название и Описание
admin/config/regional/content-language
Посмотрите в настройках. Если не ошибаюсь, там можно указать поля для которых предусмотрен перевод и для которых не предусмотрен.
Тогда сможете использовать второй вариант
Здравствуйте! Я не знаток, но много времени пришлось провести над этой темой, перевод терминов как полей делается с помощью Entity translation (на 7 его надо ставить, на 8 вроде из кробоки используется), благодаря этому модулю на /admin/structure/taxonomy/имя_словаря (т.е. при редактировании или создании словаря) появляется пятый пункт Field translation.
Также могу привести некоторые соображения:
1)Да, термины таксономии переводить можно.
2)Одно из основных отличий между локализацией и переводом таксономии описано на русском здесь (это перевод одной из статей drupal.org на русский с комментариями)
3)О каких полях териминов, кроме названия и описания Вы говорите, которые Вы еще хотите перевести я не совсем пойму?
4)Стандартно при использовании i18n у Вас будет 4 варианта
"термины не переводятся. Переводится только словарь.
Локализуется.
Переводится.
Фиксированный язык:"
Благодаря Entity translation появляется пятый.
Чтобы это было возможно нужно также включить термины таксономии в список на странице
/admin/config/regional/entity_translation
в разделе Translatable entity types
В целом во многих рекоменадиях его указывают как предпочтительный из-за запасного языка и единой концепции с нодами, но на практике у меня были сложности с некторыми другими модулями.
Про особенность пунтка с вараинтом "локализация" цитата с вышеуказанного сайта:
"В этом случае при создании и редактировании терминов вы сможете использовать только язык по умолчанию что является большим ограничением для использования этих словарей как тегов.
В случае если вы выберете этот вариант, но захотите создать материал на каком-то другом языке, язык термина будет всё равно соответствовать языку по умолчанию, установленному на этом сайте. Например, вы создаете какой-то документ на итальянском языке, а языком по умолчанию у вас является русский язык. При создании материала на итальянском языке вы добавляете какой-то термин с автозавершением ввода, если потом вы зайдёте на страницу перевода этого термина, то увидите, что термин не будет автоматически создан на итальянском языке, а будет на русском языке, потому что русский язык является языком сайта по умолчанию. Именно поэтому и рекомендуют не использовать виджет автозаполнения в случае, если вы хотите локализовать термины."
Может где-то в другом месте? Скриншот дайте, я там таких настроек не вижу.
о полях, которые я добавил для термина, в настройках словаря
Да, появлется. Но паля у термина все равно не переводятся.
1)Я добавляю свое поле в настройках словаря
2)Потом в настройках этого поля выбираю в самом низу
"Users may translate all occurrences of this field:"
3)В настроках словаря у меня выбран вариант Field translation.
4)Захожу в список терминов и выбираю нужный термин
5)С вкладки редактирования теримина перехожу на вкладку перевода термина / translate
Выбираю нужный язык "add"
У меня отркывается окно для добавления перевода термина в том числе поля для которого ранее было выбрано "Users may translate all occurrences of this field:"
Если в настройках словаря выбираю Field translation - вкладка перевода терминов у меня пропадает
В настройках поля можно выбрать Enable translation
"Users may translate all occurrences of this field" - такого у меня нету.
Также еще для названия и описания нужно заменить эти поля термина таксономии на обычное поле: кнопка replace на странице редактировнаия полей словаря (видео).
Но если Вы создаете свое поле, то его в ряде случаев не нужно замещать, оно часто сразу создается как поле.
Точно уже не помню, возможно, если у Вас в поле - файл, то, чтобы работать с файлами как с полями, нужно еще поставить какой-то модуль типа file entity (но это больше еще для работы с заголовком и альтом файла как с полями )
Эту настройку вы делали?
Извиняюсь, был невнимателен. Не обратил внимания, что вопрос про 7.
Но для 8 это действительно.
Добавил поле "test" в словарь таксономии "О нас"
скрин со страницы admin/config/regional/content-language (если не отметить чекбокс, то поле значение поля будет одинаковым для всех языков)
ЗЫ.
Вот так выглядит при неактивном чекбоксе
Спасибо, за ответы!
Ситуация немного прояснилось благодаря видео univerico.
Сейчас разбираюсь со способом от модуля entity_translation пока что вырисовались 2 вопроса:
1) при редактировании уже существующих терминов пропадают заданные пути (урлы). Да, их можно заново вбить по CTRL+V, но технически неграмотный контенщик не всегда об этом вспомнит.
2) смотрю на список терминов словаря и не вижу какие термины переведены, какие нет. Тоже неудобно.
Надо смотреть в таблице алиасов, у путей прописывается язык и если его массово обновить во всей таблице, то алиасы рпять заработают.
алиас у термнина есть и он работает. Но когда термин редактируешь - алис стирается.
3) самое неудобное. Если при переводе есть поле "ссылка на термина" термины в этом поле идут языком оригинала (даже если переведены). Хотя при просмотре ноды ссылка идет куда нужно.
Можно попробовать настройки tmgmt или модуля типа translation table (точно не помню название)
Также есть taxonomy manager (там вроде нет таблицы переводов в таком виде, как Вам нужно, но много удобных функций для таксономии)
Вы сам URL имеете ввиду или способ его создания
Если Вы по какому-то шаблону его создаете, то где-то была статья по изменению алисаов для таксономии
Т.е. можно попробовать задать способ создания URL и он при редактировании будет автоматически снова воссоздаваться
У меня с какой-то сущностью и этим модулем была похожая проблема, возможно даже с терминами, кажется при добавлении перевода напротив термина на этом языке было написано, что это теперь источник - оригинал, пришлось для этой сущности включить просто вариант "Переводится" без полей.
А когда пришлось экспериментировать с виджетом автодополнения и автозаполнением заголовка вообще выяснилось, что есть разница между импортом терминов через разные модули, создаием вручную и созданием на лету и тем, отображается ли все корректно в таблице переводов (термины тоже добавлялись и отображались в нодах, но на странице переводов не были в таблице), у меня это еще зависело от способа создания термина (вручную или из автодополняемого поля)
Если я правильно понимаю на данный момент страницы сделанные с помощью Entity translation нельзя вмонтировать в xmlsitemap?
https://www.drupal.org/project/xmlsitemap/issues/1481798
Или все-таки можно?
У меня кстати была похожая проблема с картой и переводами, при включении модуля xmlsitemap_i18n
выскакивала ошибка или предупреждение, приходистя его не включать совсем пока
А для entity translations там же кроме пэтчей в шапке еще очень много в обсуждении, можно их пробовать, 11 и 21 у многих работает хорошо.
Не помогли патчи.
Поможет модуль https://www.drupal.org/project/node_translation_sitemap
как пишут его разработка прекращена, т.к.
"this functionality would be merged into the XML Sitemap module"
но пока это would be не произошло можно пользоваться им.
Еще вопрос вырисовался. А как значения в views фильтрах поменять?
Например слева http://legalcompany.com.ua/aktyalnie-predlojeniya-po-prodaje-predpriyatii
"Район Киева" - можно указать значение на нужном языке
"Голосеевский" - нет