[opencms-dev] OpenCMS website localization
Steve Bryan
steve at bright-interactive.com
Tue Sep 16 13:40:27 CEST 2008
Hi Martin, Carl
That's right - I have separate folders en, de etc, and each has the locale
property set on it. This value propogates down to all files and folders
underneath. The site structure is replicated in each locale folder using
folders, page siblings and the corresponding properties on them. Folders
don't have siblings as such.
Content is stored in the page elements - there are copies of each element
for each language in the page XML structure. No need to use properties files
- we don't use them for multilanguage functionality at all, I can't see why
you would need to unless you wanted to localize the workplace itself, and
XML structured content creation dialogs.
The benefit of using siblings (with the content for each language all in the
same page), is that when an editor edits the page, they can use a dropdown
to flip between the different languages on the same page. To be honest there
isn't a huge amount of benefit that I can see.
The issue I was pointing out is that if translatable stuff is put in
folder/page properties (eg the Title property), then this is hard for
unskilled editors to deal with, since they have to go and change them in
each language using the workplace explorer (rather than the page editor
language dropdown).
Beware, using siblings also has a couple of disadvantages - eg when a page
is edited in one language, it shows up as edited in all the other languages
in the workplace and in the Project Management summary, which is quite
confusing.
It sounds like you're not using siblings, and have entirely separate folder
branches for the different locales, which is another valid way of doing it.
Steve
----------------------------------------------------------------------
Date: Mon, 15 Sep 2008 12:16:44 +0200
From: "Carl Alex Friis Nielsen" <cfn at kb.dk>
Subject: Re: [opencms-dev] OpenCMS website localization
To: "The OpenCms mailing list" <opencms-dev at opencms.org>
Message-ID: <8CBCCEE2D9CECF4CAFFF17DE494047A8BEC66E at exchange-2.kb.dk>
Content-Type: text/plain; charset="iso-8859-1"
No - the content resides in the resource.
The locale property can be set by simply having all material that shall be
available for a given
locale under a folder with its locale property set to the desired locale.
It really is quite simple to set up and use.
-----Original Message-----
From: opencms-dev-bounces at opencms.org
[mailto:opencms-dev-bounces at opencms.org]On Behalf Of Martin Wunderlich
Sent: Monday, September 15, 2008 11:57 AM
To: The OpenCms mailing list
Subject: Re: [opencms-dev] OpenCMS website localization
OK, but that means the content needs to be externalised to properties files,
right? In our case, we non-technical people creating the original English
content and they wouldn't necessarily know how to work with properties
files.
Cheers,
Martin
On 15/09/2008 10:35, "Carl Alex Friis Nielsen" <cfn at kb.dk> wrote:
You have multiple locales in the same resource.
Which locale is displayed depends on the locale property of the resource.
Different siblings can have different locale properties.
The properties can be inherited from the folder hierachy in the VFS.
AFAIK this is a very widely used way to handle multilingual content in
OpenCms.
-----Original Message-----
From: opencms-dev-bounces at opencms.org [
mailto:opencms-dev-bounces at opencms.org]On Behalf Of Martin Wunderlich
Sent: Monday, September 15, 2008 11:11 AM
To: The OpenCms mailing list
Subject: Re: [opencms-dev] OpenCMS website localization
Hi Steve,
Are you saying that you're using the siblings mechanism for content in
different languages? How would that work? AFAIK, siblings are basically
pointers to the exact same content.
About the web services interface, does OpenCms somehow support SOAP calls
at the moment?
Kind regards,
Martin
On 15/09/2008 10:01, "Steve Bryan" <steve at bright-interactive.com> wrote:
Hi
One usability problem we found is that when an editor creates a page in one
language folder (eg under en), the siblings do not get created
automatically
in the other language folders (which for us is generally required except
for
the odd case that the pages are only in one of the locales).
One solution to this would be to customize OpenCms to add a
'copy-to-all-locales' function, either on the create dialog or (more
easily)
as a separate context menu function. The latter can be done by adapting the
regular copy function to copy out siblings to the other locale folders.
An associated problem (which I think Martin is referring to), is that title
& navtext properties etc would normally need to be translated as well as
elements of pages and structured types. One work-around for this, is to add
title and nav-text page elements, and use them instead of the properties in
the template navigation. The ideal is to ensure that all properties are
locale independent (and hence a straight sibling copy does the job). Any
locale dependent stuff should go in page elements. Then only the page
bodies
need translation.
After that, we have a batch translation system that sounds like a much less
advanced version of Martin's :-) - ie exporting pages, getting the
translation company to fill in the control code, then re-importing. The web
services idea sounds good.
Steve
More information about the opencms-dev
mailing list