Multilingual sites

Permalink 1 user found helpful
Is there yet a real multilingual solution to Concrete5 sites?
This is not about creating /en or /ar tree and duplicating pages, I'm talking about a real to solution to build different kinds of eCommerce, community or other types of sites.
I see the multilingual addon that is not released, still it provides two languages only.
Any solution?

okhayat
 
Kiesel replied on at Permalink Reply
I am joining in on this question. I would like to know this too...
synlag replied on at Permalink Reply
synlag
just seen

http://www.concrete5.org/about/showcase/business/4tools/...

at the showcase, which has 4 language switch :)
dom replied on at Permalink Reply
dom
hi, on this site we hardcoded the language switch into the template and just refer to the different trees in the sitemap.. this solutions works well, but it is not really dynamic..
dom replied on at Permalink Reply
dom
..on this site we chose another approach:

http://www.concrete5.org/about/showcase/business/scandinavian-langu...

..there we added a special page type for the root page of the whole sitemap tree (the page called 'home' in a standard installation)..

..this page type determines the browser language and redirects to the adequate page of the tree.. the pages just got an additional url like /translationsde /translationsen etc.
dom replied on at Permalink Reply
dom
..here's the code for the page type:

<?php
foreach (explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']) as $lang) {
    $pattern = '/^(?P<primarytag>[a-zA-Z]{2,8})'.
        '(?:-(?P<subtag>[a-zA-Z]{2,8}))?(?:(?:;q=)'.
            '(?P<quantifier>\d\.\d))?$/';
                $splits = array();
                if (preg_match($pattern, $lang, $splits) && !$ok) {
                  $lines = array('de','da','en');
                  foreach ($lines as $line) {if($splits[1]==substr($line, 0, 2)){$ok=1;}}unset($line);
                  if(!$result && $ok){$result=$splits[1];}
                }
}
if(!$result){header("Location: /translationsdefault");}else{header("Location: /translations".$result."");}
?>
dom replied on at Permalink Reply
dom
..this solution is ok for most of our projects, but it isn't as user friendly as it should be.. currently we are working on a translations block, where you can choose which pages belong together (e.g. /en/contact and /de/kontakt) ..so that the links on the language switch link to the particular page and not only to the start pages..
ylluminate replied on at Permalink Reply
ylluminate
Thanks for sharing this @dom. This is the showstopper for us using C5 right now for a project. If there were a cleaner solution this would be a no brainer selection over WP I believe.

What is the status of getting this working with C5?
abra100pro replied on at Permalink Reply
abra100pro
Thanks so much, dom! This helped me soooo much!
dom replied on at Permalink Reply
dom
you're welcome :)
Tallfrog replied on at Permalink Reply
Tallfrog
I installed C5 yesterday and was really easy to adapt a theme to it. Thumbs up!

I'm debating on keeping this CMS due to the lack of bilingual support out of the box.

I've been searching on the forum/add-ons/documention for a how-to but nothing relevant came up. Would there be a topic I missed regarding an installation of some sort?

All I need is to be able to switch between english and french.

Thank you for this amazing cms, hopefully this issue can be resolved quickly.