I'm looking at making a Multilingual Drupal-6/Ubercart-2 site for Europe and have hit a few problems in terms of how the i18n module does content translations (i.e. has a parallel node for each language):
1. i18n creates a new node for each language you translate of the product. You can use the i18n_sync to keep the basic product values in sync between the two translations (i.e. sell_price, SKU, image etc) but Attributes, Adjustments and Stock levels can't be sync'ed with this module. This becomes a major data entry problem as it leaves much room for error.
2. The i18n_sync modules allows you to create a list fields to sync by node type. Now if you create product Classes to group your attributes in this means you have to duplicate this array of basic variables for each dynamic product type. Workable if you only have a few types of products but painful. I have suggested a fix.
3. I haven't tried the 'node_import' for products yet but I assume there is no option to import content translations. What about things like stock_levels?
I have looked in these threads but found no solution:
http://www.ubercart.org/forum/internationalization/4246/multiple_languag...
http://www.ubercart.org/forum/support/4758/ubercart_multilingual_site_mu...
http://www.ubercart.org/forum/internationalization/29/translation
http://www.ubercart.org/forum/internationalization/8725/translating_prod...
One solution I was toying with but haven't investigated the feasibility of would be at the theme level have a list of fields to translate (instead of a list of what to synchronise) and then load the default language node, swap the fields to translate in the $content array and then render. I guess this would also require redirecting to the original node. If SKU were used as the ID for a product everywhere in UC and not Node ID then this would work as you'd just have the SKU passed to the 'Add to cart' function...?
Really all we want is to translate the product 'Title' and the 'Description' fields and we're forced to deal with this dreadnought of a translation nightmare. Perhaps I should hack together something that just translates these fields on the fly based on the Locate string. I mean, how hard can that be...? ("famous last words")









Ran into this problem myself on my last project (7 languages in 12 different countries).
Decided togo with the flow and make the best with the node translation duplicates.
I made a sync for the different product elements (stock, ubercart core data, like price etc). After that i needed to run though ubercart and made different parts like product overview etc base there data on only the main tnid. Otherwise you get duplicate data all over the place. Also made sure cart products are always the main node (tnid)
All by all a pritty dirt job. My advise. Try to come up with a solution to translate the form elements you need to get translated (like title, description, path...) Seems faster and cleaner then my last approach. And yes...shouldn't be that hard....