Description:
If a user categorizes a node with a certain taxonomy term, the node's translations should be categorized with the same term. If the term is a language dependent term, the node's translations should be categorized with the respective translations of the term.
Example:
English node: "Hello World"
Spanish node: "Hola Mundo"
English term "test"
Spanish term "prueba"
Italian term "prova"
International term "Greenpeace"
If I assign "test" to "Hello World", "prueba" should be assigned to "Hola Mundo". If I assign "Greenpeace" to "Hola Mundo", "Greenpeace" should also be assigned to "Hello World".
Even more sophisticated:
A quite similar feature but technically probably quite destinct, is preselecting terms on a translation node edit form.
If I create a new translation from "Hola Mundo" into Italian, the taxonomy boxes on the node edit form should be preset to "prova" and "Greenpeace".
Special cases:
There is a special case when taxonomy terms are not translated into all site wide languages. The easiest way to deal with that would be to fail quietly, not assigning anything to nodes in languages that don't have a term translation in the required language. Another way could be a user warning: "Not all nodes were assigned taxonomy terms because terms A, B, C don't have a translation". (A link to create and assign those translations on the spot would take the hole thing to the next level :) )
Ok, before I take off, I stop here. I appreciate any feedback on this topic from the international Drupal community.
Comments
Comment #1
alex_b commentedThe second part, prepopulating taxonomy settings on node forms, is addresseed by this patch and should be already in 5.x: http://drupal.org/node/69683 .
xpereta talks on the same thread about automatically assigning terms to all translations of a node: http://drupal.org/node/69683#comment-131138
Comment #2
jose reyero commentedThis makes sense.
However, sometimes you may want to have different unrelated terms for translations, so we'll need also some new setting. I'm thinking whether this option should be a 'global' setting for all content types or should be per-content-type.
Changed the title, which I think it explains better.
Comment #3
alex_b commentedJose, I would suggest to make synchronized taxonomy optional per vocabulary.
I think wether you want to synchronize taxonomy associations with nodes rather depends on the vocabulary than on the node types you actually categorize.
E. g. a site uses one vocabulary for representing their organisational structure [Development, PR, Production, Management] - those terms should be synchronized. If I assign the term "Management" to the latest business report its translation should be assigned the same term.
Then the site uses a hidden vocabulary for doing some workflow stuff [Needs review, Ready to publish, Obsolete]. Obviously, these terms should not be synchronized w/ other translations of a node.
A checkbox on a vocabulary page could read:
[x] Synchronize node/term associations. When a node is assigned a term, translations of the node will be assigned the same term. If the term is language specific, translations of the node will be assigned the according translation of the term.
Comment #4
alex_b commentedOk. I just updated 5.x dev and saw that it's already working for international (not language dependent) terms. I guess it's harder to do this for language dependent terms, as there are no translation relations between terms. Or are there?
Comment #5
jose reyero commentedAlex, not sure what you mean. I think the first part, adding terms with no language and translated terms when creating translation is already working fully (as of 5.x-1.0).
About keeping terms in sync, please check New i18nsync.module in the new 'experimental' folder (Will show up as Package 'Multilanguage - i18n - experimental')
It adds a per-vocabulary option and then takes care of term synchronization when updating any node in the translation set. I've added this into a new module because it's kind of experimental for now and also there's room for other types of synchronizations between translations for the future -like workflow, dates, files, etc...-
I'd appreciate feedback and review of the implementation. There are some queries there that are great for performance (It updates n nodes x n terms in one shot, but are maybe too complex and kind of 'risky' if something goes wrong.
Note: All this is only in the DRUPAL-5 development branch of the module for now, not in stable releases
Comment #6
drewish commentedI guess we can mark this a fixed since the module's been committed for over a year.
Comment #7
Anonymous (not verified) commentedAutomatically closed -- issue fixed for two weeks with no activity.
Comment #8
shankar@baryons.net commentedHi,
Same problem I am aslo facing. How you solved this problem. Please help me. I fallowd all the steps we mentioned, But still I am not able to resolve