I tried to translate my vocabulary "name" and the "terms". This seems not possible. Something configured wrongly? Locale and Content translation is active.

Are you able to fix this?


Gábor Hojtsy’s picture

Version: 6.x-dev » 7.x-dev

Drupal 6 does not include such a feature. Maybe Drupal 7 will include this. Until then, you will need to use a contributed module to translate categories (and menus, and content types, and profile fields, and site settings and aggregator categories).

hass’s picture

And i have thought D6 will be the i18n release... :-(

Gábor Hojtsy’s picture

Yes, many people though this. A few people contributed.

catch’s picture

Title: Categories not translateable » Translateable taxonomy vocabularies and terms
Category: bug » feature
Priority: Critical » Normal
catch’s picture

Title: Translateable taxonomy vocabularies and terms » Translatable taxonomy vocabularies and terms
Jose Reyero’s picture

Issue tags: +i18n sprint
catch’s picture

So with i18n module, the current options for localization are these. I've added descriptions as to what I think each option does:

[1] Localize terms. Terms are common for all languages, but their name and description may be localized.be
Every term is translatable individually - so on nodes, term listings, and form widgets the user should see the term in their own language, but the tid will always be the same.

[2] Per language terms. Different terms will be allowed for each language and they can be translated.

Each term has an assigned language - seems like this would make sense in a tagging vocabulary - where an article in Spanish has terms created in Spanish, as part of one overall tagging vocabulary. Presumably this means that different terms with the same spellings would show up in the same vocabulary - so "information" in English, and "information" in French would be different terms. I'm not sure about the use cases for this - tagging in English and tagging in French is in most cases going to result in different words anyway. I'm also not clear what "and they can be translated" means - since that seems to take us back to the first option.

[3] Set language to vocabulary. The vocabulary will have a global language and it will only show up for pages in that language.
The entire vocabulary is in one language, completely isolated from other vocabularies in different languages.

So the main questions here are whether all these use cases need to be supported in core. I'd probably lean towards [1].

However that raises interesting questions for tagging - if I have "Spanish" and it's translated as "Espanol" - what happens if someone types "Espanol" into an autocomplete? Do they create a new term, or do we pick up the translations automatically and assign it to the 'parent'. Seems like this might be another case for 'typed' synonyms - where the synoynm table has an additional language relationship, and these get picked up when entering tags (see synonym collapse module). But that wouldn't map well to administration or display - or at least not using the existing locale module, so might be a dead end.

Yet another question - if terms are one-per-language in the same vocabulary - where two terms are translations of each other, could we add a term relationship there - so the language switcher block could query for related terms, where the relationship is of type 'language', and show the 'translated' terms in the block. This also has implications for fields in core - since terms are likely to be 'fieldable' items - and if translating term names and descriptions we probably want to be able to translate arbitrary other fields as well.

plach’s picture

Version: 7.x-dev » 8.x-dev

This will be possible in Drupal 7 also through translatable fields and/or dynamic database translation.
For a core solution I am afraid we will have to wait for D8 :(

colan’s picture


swentel’s picture

Status: Active » Closed (fixed)

This is possible now in D8

Gábor Hojtsy’s picture

Well, vocabularies are, but term labels are not :/ #1498660: Refactor taxonomy entity properties to multilingual exists for that.

colan’s picture

Status: Closed (fixed) » Closed (duplicate)

So then this is a duplicate.