May be I choose the wrong title here.
I have a customised "My English" that "translates" the default Drupal English to a more user friendly English. I also use Groups and have customised the translation for Public so that it reads "Public (visible by all users)".
I use Hierarchical Select Content Taxonomy on a vocabulary that happens to have a term the term "Public" too. I am amazed to see that now in the HS CCK field I read "Public (visible by all users)" which is in a completely wrong context and therefore wrongly translated. The term "Public" does not have anything to do with groups and was never intended to be translated at all.
I.m.h.o. this is a bug. Translation of vocabularies should not take place this way. The Drupal Interface translation should not be used to translate content (taxonomy terms). I did not provide a translated Taxonomy so it should not try to be "helpful" translating what I did not intend to be translated.
I know that in my explanation you might be confused by my particular use of the Drupal interface translation system, but the same bug is valid when you would use for instance Spanish or German.
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | avoid-term-translation-1252838-3.patch | 638 bytes | weri |
Comments
Comment #1
berdirYes, this is completely wrong. In our case, it results in 10k+ locale source entries in the database because of this.
Comment #2
wim leersThere has been a push to fix HS term translation a long time ago. AFAIK, it was perfected back then. i18n_taxonomy is used. So I'm not sure what's wrong at this point.
All I can say is: if you provide the patch, I'd be happy to commit it :)
Comment #3
weri commentedI's right, the i18n_taxonomy is used and then it's not necessary to translate every term name. People who would have translated terms should use i18n_taxonomy instead to use the "normal" interface translation.
Or is there an other reason to translate the term name with the t-function?
Comment #4
berdirPatch looks good to me.
If you want translated terms, the only correct way to do it is to use i18n_taxonomy. There is no need to add a t() fallback.
Comment #4.0
berdirforgot the word "not"
Comment #5
goldTidying up the issue queue. The 6.x version is no longer supported. Only reopen this if it also applies to the 7.x.