[ic] Urgent Locale questions

Gert van der Spoel gert at 3edge.com
Sat Jan 23 07:42:04 UTC 2010


> -----Original Message-----
> From: interchange-users-bounces at icdevgroup.org [mailto:interchange-
> users-bounces at icdevgroup.org] On Behalf Of N.E.S.T. Solutions
> Sent: Saturday, January 23, 2010 8:43 AM
> To: interchange-users at icdevgroup.org
> Subject: Re: [ic] Urgent Locale questions
> 
> 
> 
> -----Original Message-----
> From: interchange-users-bounces at icdevgroup.org
> [mailto:interchange-users-bounces at icdevgroup.org] On Behalf Of Gert van
> der
> Spoel
> Sent: Friday, January 22, 2010 9:14 AM
> To: interchange-users at icdevgroup.org
> Subject: Re: [ic] Urgent Locale questions
> 
> > -----Original Message-----
> > From: interchange-users-bounces at icdevgroup.org [mailto:interchange-
> > users-bounces at icdevgroup.org] On Behalf Of N.E.S.T. Solutions
> > Sent: Friday, January 22, 2010 8:24 AM
> > To: interchange-users at icdevgroup.org
> > Subject: [ic] Urgent Locale questions
> >
> >
> > Hi all,
> >
> > I'm trying to setup a multiple language site, and I've got no hair
> > left!
> >
> > I'm running ic 5.6 with the default
> > <catroot>/dbconf/locales/default.cfg,
> > along
> > with the xx_YY.cfg file for each language, which includes :
> >
> > Variable CURLOCALE xx_YY
> > include dbconf/locales/default.cfg
> >
> > I have configured my locale table with this to test with xx_YY only
> for
> > now:
> > ProductFiles    products                products_xx_YY
> > products                de_products     products_xx_YY
> >
> > variable.txt has this:
> > DEFAULT_LOCALE  en_US   Internationalization
> > LOCALES xx_YY yy_ZZ aa_BB       Internationalization
> >
> >
> > I've created the ./products/products_xx_YY.txt and the
> > ./dbconf/mysql/products_xx_YY.mysql
> > With the fields I see that are MAPped in default.cfg, on reconfig, my
> > table
> > loaded ok with one item to test.
> >
> > On the front-end, I view the product from the products_xx_YY language
> > (title, desc, comment) but all
> > Other fields that are present in products.txt and that are not in
> > products_xx_YY.txt don't show. I thought
> > that they would fallback to products.txt if absent or empty.
> >
> > I'll also have to do the categories, prod_group, AND (variants?!?).
> >
> > I'm now very puzzled with the following 4 questions:
> >
> > -- When using a non default locale, does IC fetch ALL fields from
> > products.txt and then
> > replace the ones that are mapped only, in the default.cfg? Or do I
> need
> > 100%
> > of the
> > columns in my locale products_xx_YY files?
> 
> Have not tried this, but does the following line not provide the
> columns
> that you want to have MAPed with the non-translated content:
> Database products MAP_OPTIONS share __CURLOCALE__
> products___CURLOCALE__
> area area___CURLOCALE__ cat cat___CURLOCALE__
> 
> So the area and cat would be used from products.txt  and not part of
> products_xx_YY.txt
> (now area and cat do not exist in the standard products table so the
> above
> line probably does jack).
> 
> > -- For cat and prod_group, do I have to create cat_xx_YY and
> > prod_group_xx_YY also the
> > same as I did for the products?
> 
> If you have something to translate then yes you should follow the same
> scheme ... for all columns that do not need localization I thing you
> can go
> with MAP_OPTIONS share  again ..
> 
> > -- I see the options mapped in default.cfg, do I have to map the
> > variants
> > also to
> > be able to localize variants?
> 
> Either that or you could attempt to use [msg]  or [L]  tags  and the
> locale
> table to translate specific words/phrases ...
> You might actually want to go for the translation tag as in your order
> management system you would probably want to keep your options
> non-translated .. so when someone orders a Red t-shirt, it will not
> become
> Rot when the order is made with the german locale.
> 
> >
> > -- All together, once everything will be working, does the MAP in the
> > default.cfg instruct
> > IC to populate all locale files (products_xx_YY.txt,
> options_xx_YY.txt,
> > variants_xx_YY.txt ?   )
> > when creating a new product? Or do these files have to be done
> > manually/otherwise?
> 
> When you create a new product and add only the standard stuff in the
> admin
> then I do not think it will populate any of the xx_YY tables and also
> think
> it should not as you might not want to have English text in locale
> tables ..
> 
> 
> What I for example have in my admin is additional tabs with the locale
> .. so
> my first tab has the content of products and I have a tab 'Greek' and a
> tab
> 'Dutch' and clicking those tabs I get the fields for the xx_YY.txt
> table and
> enter my data there aswell ...
> 
> >
> > I propose to write the full manual on this once I get it straight,
> > seems to
> > be lacking a
> > good How-To on this subject.
> >
> > Thanks in advance for your help, I'm desperate to figure this out
> > Martin
> 
> 
> Hi Gert, Thank you for your help.
> 
> I've done all products_xx_YY.txt the same as products.txt for each
> language
> now, and also I did the following in dbconf/locale/default.cfg for each
> fields. These are for images, so I want to have the field fallback to
> the
> products.txt table, seems that it doesn't fallback in any case
> 
> Database products MAP image0 __CURLOCALE__
> products___CURLOCALE__::image0
> Database products MAP image0 fallback 1
> 
> But it doesn't work. I tried this also, with and without the above
> lines:
> 
> Database products MAP_OPTIONS share __CURLOCALE__
> products___CURLOCALE__
> area area___CURLOCALE__ cat cat___CURLOCALE__ image0
> image0___CURLOCALE__
> 
> That didn't work either. I even tried to map directly to
> products::image0
> with this:
> 
> Database products MAP image0 __CURLOCALE__ products::image0
> ...or this...
> Database products MAP image0 products::image0
> ...or this...
> Database products__CURLOCALE__ MAP image0 products::image0
> ...or this...
> Database products__CURLOCALE__ MAP __CURLOCALE__ image0
> products::image0
> 
> 
> All those combinations do absolutely nothing, not even a log entry in
> the
> error log.
> 
> Throughout these attempts, I updated my DB field in the database in
> between
> the various tests, and the image popped up on the web page...  so, it's
> definitely looking up in the products_xx_YY database table.
> 
> I tend to think that the line "Database products MAP image0 fallback 1"
> means to make it fallback to products.txt, but it just doesn't and I
> can't
> find documentation for it.

Yes it should fallback to the original table and the technique works in
itself (I use it).
I wonder if you only tried to actually see/not see the image and did not
look at the particular output.

So [data table=products column=image0 key="..."]  (where ... is a sku), will
this print any output?
It should print the output of the data in products_xx_YY.txt , field image0
with sku=...
If this field is empty it falls back to the data in products_xx_YY.txt

In case this does not work, does it still show the other translations?
If not then your config file is broken. You could use Debug and create a
xxx.structure file to see what it builds up.

CU,

Gert






 




More information about the interchange-users mailing list