Take the 2-minute tour ×
Craft CMS Stack Exchange is a question and answer site for administrators, end users, developers and designers for Craft CMS. It's 100% free, no registration required.

I'm using the localisation feature for the first time, and I'm not sure if I understand its rationale.

On a site with entries that have multiple fields, I only have the main body text set up for translation. If I switch to the secondary language in the control panel, all fields are displayed and pre-populated with the contents of the main language (but according to my understanding, they're just pointers and not duplicated in the database).

Why are the non-translateable fields not set to disabled, marked up otherwise, or even hidden completely? Is there a way to do so?

(My concern is that my client can't identify which fields need to be translated, and hereby overwrites a non-translateable field with the secondary language.)

share|improve this question
1  
The fields actually are duplicated in the database, but they are always synced and saved on every entry save. It doesn't matter in which locale you are saving the entry. –  carlcs Aug 27 at 9:45
    
Just to clarify the original post, a use case for "translateable" fields the way I use them: My client list might contain companies with name variants for different languages, but that are rarely used (e.g. [de:] Schweizerische Bundesbahnen = [en:] Swiss Federal Railway). I would want to leave such a field untouched, but translate the project description alongside it. –  Avant la lettre Aug 27 at 10:25
    
Yep, I totally understand what you're talking about. Don't you think some kind of sync indication (comparable to the red "*" for required fields) would help in this case? –  carlcs Aug 27 at 10:33
    
Or the other idea I had. You actually allow such fields to be translatable, but there would be a indication of some sort, telling you if the field is still in sync across all locales. Add a checkbox to that, to trigger a new sync for the field on the next save and it'd be the perfect solution for any situation I can imagine. –  carlcs Aug 27 at 10:39
1  
I set up a site for a Client and they went nuts over this problem. I wrote a mail to the craftcms Team if they could flag/highlight non-translatable/translatable fields with a flag or something. Write one as well so the see its a serious request. Right now it's almost impossible to determine translatable/non-translatable fields. –  Kaspar Aug 27 at 11:08

2 Answers 2

up vote 2 down vote accepted

The fields that are not marked for translation are duplicated and synced between the different locales. So if you make a change in one locale, it will change it in all. This is different from saying that they are only available in one locale, which isn't possible in Craft.

Removing/disabling them in "secondary languages" isn't possible, and doesn't make sense since there is no "primary" or "secondary" languages in Craft. You can choose to publish an entry in only your "secondary language" if you want, and when doing so you'd probably want all fields to be editable.

But, I see your point, and I've had this dilemma myself. What I did was put the fields that weren't translatable in a separate tab (you could of course do it the opposite way, put the fields that are translatable in a separate tab). That made sense for my client, at least, but I guess it really depends on your project. :)

share|improve this answer
    
Separating the fields by placing them in different tabs is actually a not so bad idea, aelvan. Thanks! At least until we get a built in feature for sync indication/trigger-checkbox for each field. I already did a feature request for such a thing on g+ (see here or here). –  carlcs Aug 27 at 9:37

Things changed with Craft 2.2:

Translatable field labels are now marked with locale IDs to help identify which fields are translatable.

share|improve this answer
    
...and there is still space left next to that label! :) Wouldn't it be nice to have labels of all other locales sitting right there, if the field's content is still in sync to the locale you're currently editing? Maybe the fact, that the label is not just a symbol but actually names the local ID, is a little indication that such a feature is planned?! –  carlcs Sep 3 at 8:51

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.