Multilanguage: Roadmap
Permalink 1 user found helpful
Hello!
We are starting a multi language website and are not sure wether to start in 5.6 with the modules available or 5.7 and hope language support will come soon and we be able to convert the site to multi.
What are your suggestions?
Thanks!
Sam
We are starting a multi language website and are not sure wether to start in 5.6 with the modules available or 5.7 and hope language support will come soon and we be able to convert the site to multi.
What are your suggestions?
Thanks!
Sam
no news and no answers. :(
I would personally suggest going with 5.6 currently for multilingual sites.
There have been some messages from the core team that Internationalization functionality would be integrated into the 5.7 core at some point which has been a high-priority feature request from the multilingual community for a long time.
However, there is no information available on when this is going to happen. It might take weeks, months, or even a year. There is basically no information to support that.
So, if you want to play it safe and not to stretch the client's nerves too much on waiting for that to arrive, I'd strongly suggest going with 5.6.
In fact, this would be my suggestion for any production sites currently. Although the core team seems to push 5.7 very hard, in my opinion it is quite far from being a production ready product (I hope I don't get burned for saying this out loud). I'd wait until the next year at least unless you're doing something quite experimental or working with a client who can tolerate some bugs here and there. And also, be prepared to work on those bugs yourself if there is some bug stopping you from building the site. E.g. I've noticed some serious issues with the new layouts functionality. The add-on situation would also be much better if you wait until the next year.
If you don't need one-to-one page mappings between the language versions, it is also _possible_ to do a multilingual site with 5.7. You can do it the same way we used to do multilingual sites before there was the Internationalization add-on:
http://www.concrete5.org/documentation/how-tos/editors/building-sit...
But there are some problems in doing that I won't cover here (basically the reasons behind the Internationalization add-on's existence in 5.6).
There have been some messages from the core team that Internationalization functionality would be integrated into the 5.7 core at some point which has been a high-priority feature request from the multilingual community for a long time.
However, there is no information available on when this is going to happen. It might take weeks, months, or even a year. There is basically no information to support that.
So, if you want to play it safe and not to stretch the client's nerves too much on waiting for that to arrive, I'd strongly suggest going with 5.6.
In fact, this would be my suggestion for any production sites currently. Although the core team seems to push 5.7 very hard, in my opinion it is quite far from being a production ready product (I hope I don't get burned for saying this out loud). I'd wait until the next year at least unless you're doing something quite experimental or working with a client who can tolerate some bugs here and there. And also, be prepared to work on those bugs yourself if there is some bug stopping you from building the site. E.g. I've noticed some serious issues with the new layouts functionality. The add-on situation would also be much better if you wait until the next year.
If you don't need one-to-one page mappings between the language versions, it is also _possible_ to do a multilingual site with 5.7. You can do it the same way we used to do multilingual sites before there was the Internationalization add-on:
http://www.concrete5.org/documentation/how-tos/editors/building-sit...
But there are some problems in doing that I won't cover here (basically the reasons behind the Internationalization add-on's existence in 5.6).
I don't see you have much of a choice but to go with 5.6...
That said, the internationalisation add-on is far from perfect - notably getting menus to work and getting two independent navigation systems.
I'm migrating from WP - partly because there is NO internationalisation apart from awkward plugins (there is not even a clear policy about it), I looked at Joomla where you can have a multilingual site that works very easily (ie the policy is there and the software is mature and works) but I don't like the rest of it. C5 seems to have the policy, but it is difficult to implement.
5.7 doesn't seem ready for anything more than vanilla sites that don't ask too much. I'm surprised that it is promoted as the go-to download when it is clearly still in development. I've only just started playing with C5 and it took me a while to understand that 5.6 was the stable version.
That said, the internationalisation add-on is far from perfect - notably getting menus to work and getting two independent navigation systems.
I'm migrating from WP - partly because there is NO internationalisation apart from awkward plugins (there is not even a clear policy about it), I looked at Joomla where you can have a multilingual site that works very easily (ie the policy is there and the software is mature and works) but I don't like the rest of it. C5 seems to have the policy, but it is difficult to implement.
5.7 doesn't seem ready for anything more than vanilla sites that don't ask too much. I'm surprised that it is promoted as the go-to download when it is clearly still in development. I've only just started playing with C5 and it took me a while to understand that 5.6 was the stable version.
@NickKN
I can only tell you that you seem to be part of the majority with your thoughts. It should be with a lot less focus on the download page.
I understand that the core team would like to push people to use the latest (and greatest) version by doing this to get the ecosystem rolling more quickly and newcomers adapting the latest version to avoid the migration headaches that is ahead quite soon in the future. However, there is not much to push if the product is incomplete and buggy, and has basically no documentation (although, there is some coming this week, which is about one month later than the official release).
And no, this is not a rant or insult towards the core team, I appreciate their work A LOT. This is just saying out loud what many of us think here on how the whole release was handled, so that we can all learn something from here.
On your second though, I agree that if the Internationalization is built into the core, it should be re-though from ground up to support more use cases than the current solution for 5.6. E.g. having multiple language trees of the same language and having language trees somewhere else than on the root-level of the site would be IMO welcome features to the "Internationalation toolbox".
Other welcome features would include duplicating single page routes under several language nodes (so that they appear correctly in search and sitemap.xml) and taking custom routes into consideration when loading the translation files. The current solution only checks which was the last selected language if the request does not go to a page that is under a language node.
5.7 doesn't seem ready for anything more than vanilla sites that don't ask too much. I'm surprised that it is promoted as the go-to download when it is clearly still in development.
I can only tell you that you seem to be part of the majority with your thoughts. It should be with a lot less focus on the download page.
I understand that the core team would like to push people to use the latest (and greatest) version by doing this to get the ecosystem rolling more quickly and newcomers adapting the latest version to avoid the migration headaches that is ahead quite soon in the future. However, there is not much to push if the product is incomplete and buggy, and has basically no documentation (although, there is some coming this week, which is about one month later than the official release).
And no, this is not a rant or insult towards the core team, I appreciate their work A LOT. This is just saying out loud what many of us think here on how the whole release was handled, so that we can all learn something from here.
On your second though, I agree that if the Internationalization is built into the core, it should be re-though from ground up to support more use cases than the current solution for 5.6. E.g. having multiple language trees of the same language and having language trees somewhere else than on the root-level of the site would be IMO welcome features to the "Internationalation toolbox".
Other welcome features would include duplicating single page routes under several language nodes (so that they appear correctly in search and sitemap.xml) and taking custom routes into consideration when loading the translation files. The current solution only checks which was the last selected language if the request does not go to a page that is under a language node.
I second your appreciation of the work being done by the core team. I also like the way they engage in the forum.
I think 5.7 is going to be very good indeed. I like the image/file management and I can do things simply with C5 that would need special coding in WP.
On the other hand the documentation is a little sparse in comparison.
I think 5.7 is going to be very good indeed. I like the image/file management and I can do things simply with C5 that would need special coding in WP.
On the other hand the documentation is a little sparse in comparison.
The plan with internationalization is to fold the free one in the 5.6 marketplace into the core, and make the enterprise one extend it.
This would take about a week of work from Andrew, who is currently deep into writing developer docs for 5.7. An enterprise client wanting to buy enterprise internationalization from us would change those priorities.
This would take about a week of work from Andrew, who is currently deep into writing developer docs for 5.7. An enterprise client wanting to buy enterprise internationalization from us would change those priorities.
I'm afraid it needs a little more than "folding into" 5.7... It still lacks the quality of other parts of 5.7.
Notably anything to do with navigation and Autonav settings - the forum abounds with questions on the subject. If you try to go with selecting just the language tree, you can't get "Home" of the language to line up with the 1st child level (as with a monolingual site) without writing quite a substantial script - which is in the wild, I tried it and it had the bizarre effect that if one clicks on the Site Title it goes to the site Root home page... (ie mysite/index.php, rather than ../index/en)
My next solution has been to go with aliases for home pages on the same level as the other 1st child pages. This has the unwanted effect that, if you click on the site title link you get 404... it wants to go to Mysite/en but, I suppose, because the address of the alias' address is Mysite/en/home there is a conflict...
Almost all the "global" areas have to be programmed with a conditional if ( locale ==....) and you have to maintain stacks for each language.
I'm not enough of a programmer to be able to work it out - it's probably not that difficult.
What I'm basically trying to say is that it doesn't work out of the box for someone with a low to intermediate skill-set.
Notably anything to do with navigation and Autonav settings - the forum abounds with questions on the subject. If you try to go with selecting just the language tree, you can't get "Home" of the language to line up with the 1st child level (as with a monolingual site) without writing quite a substantial script - which is in the wild, I tried it and it had the bizarre effect that if one clicks on the Site Title it goes to the site Root home page... (ie mysite/index.php, rather than ../index/en)
My next solution has been to go with aliases for home pages on the same level as the other 1st child pages. This has the unwanted effect that, if you click on the site title link you get 404... it wants to go to Mysite/en but, I suppose, because the address of the alias' address is Mysite/en/home there is a conflict...
Almost all the "global" areas have to be programmed with a conditional if ( locale ==....) and you have to maintain stacks for each language.
I'm not enough of a programmer to be able to work it out - it's probably not that difficult.
What I'm basically trying to say is that it doesn't work out of the box for someone with a low to intermediate skill-set.
I've had to give up the alias solution - it is completely incompatible with the language switcher !
The other solution I am now trying is adding a bit of HTML to the Site title block... to make it clear that it's the only "Home" link available.
But Tiny MCE systematically wipes it. (God I hate Tiny MCE)
The other solution I am now trying is adding a bit of HTML to the Site title block... to make it clear that it's the only "Home" link available.
But Tiny MCE systematically wipes it. (God I hate Tiny MCE)
Yeah, especially if you want to extend it for enterprise use cases, you will need to create a bit more flexible framework for the multilingual needs.
How about involving the multilingual community on this? We might have a couple of working days to throw in helping in building it. I think I also saw @mlocati talking about this at some point, so maybe he could also throw in some work. And maybe @Remo would also throw in some comments at least...
But as of experience, we don't want to start to work on something and then see the pull request closed as "not exactly what we were thinking". (would not be the first time that happens)
How about involving the multilingual community on this? We might have a couple of working days to throw in helping in building it. I think I also saw @mlocati talking about this at some point, so maybe he could also throw in some work. And maybe @Remo would also throw in some comments at least...
But as of experience, we don't want to start to work on something and then see the pull request closed as "not exactly what we were thinking". (would not be the first time that happens)
I'd get involved, but I only have limited skills.
Multilanguage capability is something of a niche however - unless you live outside the US and then it becomes important.
The most obvious problem is in the "global" areas - navigation, site title (which may need to be different) etc.
The biggest headache is Autonav and I don't have the skills for it. It's not rocket science - you need, 1 : to find which locale you're in; 2 : which page is the root of that language's tree and 3: get it to spit out the menu for that tree...
1 is easy enough, 2 is a simple database request - it's part 3...
Multilanguage capability is something of a niche however - unless you live outside the US and then it becomes important.
The most obvious problem is in the "global" areas - navigation, site title (which may need to be different) etc.
The biggest headache is Autonav and I don't have the skills for it. It's not rocket science - you need, 1 : to find which locale you're in; 2 : which page is the root of that language's tree and 3: get it to spit out the menu for that tree...
1 is easy enough, 2 is a simple database request - it's part 3...
I think we're talking about the matter from a slightly different perspectives but it's good to bring up the discussion on this matter from multiple perspectives.
My primary point is that the system should be flexible enough to allow further development on top of it. Your primary point is that it should be easy to use (i.e. integrate easily with the core blocks) and understandable by a normal user. I think both of these perspectives make sense and are perfectly valid requirements.
To your point:
You're perfectly spot on on the second point, it's not usually very important in US-based projects, and it's certainly a niche there. But if you look at Europe and basically any country within it, it's much more than a niche. There has been several discussions about this among the multilingual community. I think this is also the reason behind the idea of bringing all this into the core (in addition to keeping up with the competition who is also integrating similar functionality to their systems).
E.g. Finland (which is where I live in) is a bilingual country by itself and almost any business that has some operations outside of our borders also wants an English version of their website. For us it's not a niche, it's like 95% of the projects where we need multilingual functionality.
And this is not certainly the only country within Europe. E.g. Switzerland (where @Remo comes from), has four official languages and there are many other countries with the same situation especially in the central/western parts of Europe. While that might not account for a lot of percentage over the world's population, it certainly accounts for a large percent of the agencies or live sites using concrete5.
My primary point is that the system should be flexible enough to allow further development on top of it. Your primary point is that it should be easy to use (i.e. integrate easily with the core blocks) and understandable by a normal user. I think both of these perspectives make sense and are perfectly valid requirements.
To your point:
Multilanguage capability is something of a niche however - unless you live outside the US and then it becomes important.
You're perfectly spot on on the second point, it's not usually very important in US-based projects, and it's certainly a niche there. But if you look at Europe and basically any country within it, it's much more than a niche. There has been several discussions about this among the multilingual community. I think this is also the reason behind the idea of bringing all this into the core (in addition to keeping up with the competition who is also integrating similar functionality to their systems).
E.g. Finland (which is where I live in) is a bilingual country by itself and almost any business that has some operations outside of our borders also wants an English version of their website. For us it's not a niche, it's like 95% of the projects where we need multilingual functionality.
And this is not certainly the only country within Europe. E.g. Switzerland (where @Remo comes from), has four official languages and there are many other countries with the same situation especially in the central/western parts of Europe. While that might not account for a lot of percentage over the world's population, it certainly accounts for a large percent of the agencies or live sites using concrete5.
I'm in France - which is not a good example of multilingual ability !
But even if it's a country which is officially monolingual, there are people understand that if you want a wider audience you have to make an effort and translate.
The EU in Brussels has to function in something like 25 languages !
Europe is a very big market indeed - and any CMS that wants to make a far-reaching impact has to consider, to degree, its needs.
But even if it's a country which is officially monolingual, there are people understand that if you want a wider audience you have to make an effort and translate.
The EU in Brussels has to function in something like 25 languages !
Europe is a very big market indeed - and any CMS that wants to make a far-reaching impact has to consider, to degree, its needs.
I found a solution for my autonav problem which I posted here :http://www.concrete5.org/community/forums/internationalization/a-so...
It is not pretty, and any suggestions for improvement, I would appreciate.
While searching for the hack, I discovered a lot about how C5 works and about the current state of internationalisation within the software.
The starting point for the hack is here :http://www.concrete5.org/marketplace/addons/internationalization/su... wherein I discovered that you have to explicitly tell your theme that the site is multilingual...
While messing about with the autonav block, I discovered that you have to tell it too that the site is multilingual...
I have the sneaking sense that this may be the case with all blocks.
So I conclude that while the mechanics for a multilingual site are in place - ie the copying and linking of pages across the language trees - there is no globally available api which is necessary for development and front-end user experience. It seems to depend on hacks at the moment.
With the move from add-on to core this could pretty easily be remedied - if a user sets up a language section you could imagine something like isSiteMultilingual() would be set to "true", thus making an api and variables available...
It is not pretty, and any suggestions for improvement, I would appreciate.
While searching for the hack, I discovered a lot about how C5 works and about the current state of internationalisation within the software.
The starting point for the hack is here :http://www.concrete5.org/marketplace/addons/internationalization/su... wherein I discovered that you have to explicitly tell your theme that the site is multilingual...
While messing about with the autonav block, I discovered that you have to tell it too that the site is multilingual...
I have the sneaking sense that this may be the case with all blocks.
So I conclude that while the mechanics for a multilingual site are in place - ie the copying and linking of pages across the language trees - there is no globally available api which is necessary for development and front-end user experience. It seems to depend on hacks at the moment.
With the move from add-on to core this could pretty easily be remedied - if a user sets up a language section you could imagine something like isSiteMultilingual() would be set to "true", thus making an api and variables available...
We would love to use 5.7 for our new projects. However, the multilingual capabilities are absolutly necessary for us. If it is a question of money - maybe crowd funding could be a possibility to finance and push the development of that feature. I am sure there are a lot of people out there, who would love to have that feature. As I am quite new to this forum, maybe you could give your opinion about that.
+1 for CrowdFunding!
I'm in the same boat.
I've been trying hard the past many months to move out of the Wordpress world.
I love the concepts and the code and the Community behind Concrete5, but living in a bilingual city in a bilingual country, the majority of my clients have a multilingual requirement for their website.
Would def contribute financially to this task.
I'm in the same boat.
I've been trying hard the past many months to move out of the Wordpress world.
I love the concepts and the code and the Community behind Concrete5, but living in a bilingual city in a bilingual country, the majority of my clients have a multilingual requirement for their website.
Would def contribute financially to this task.
+1
The plan for this is that it will be fully integrated in the core in 5.7.3. Can't 100% commit to when that will be, but it should be before the end of the year. This will include all the functionality of the free internationalization add-on, as well as an interface to import and translate content that's found in your site's templates (which was something was only a part of our paid Internationalization Enterprise add-on)
That's exciting ! (and thanks for taking the time to post)
The more I think about it, if C5 gets it right and makes it genuinely easy (ie automated as far as possible) to set up a multilingual site it will put it in front of the competition.
Joomla works but it is tedious and fastidious to organise, and WP are barely getting around to thinking about it... latest discussion was whether to create a "language" tag...
My latest thoughts - choosing a language creates language root page automatically with 2 letter language code as handle by default (makes developing language sensitive views, addons easier) and an option to have a field for each language for file attributes, title etc. (for much the same reason)
The more I think about it, if C5 gets it right and makes it genuinely easy (ie automated as far as possible) to set up a multilingual site it will put it in front of the competition.
Joomla works but it is tedious and fastidious to organise, and WP are barely getting around to thinking about it... latest discussion was whether to create a "language" tag...
My latest thoughts - choosing a language creates language root page automatically with 2 letter language code as handle by default (makes developing language sensitive views, addons easier) and an option to have a field for each language for file attributes, title etc. (for much the same reason)
That sounds amazing!!! Really looking forward to 5.7.3!
Awesome! Looking forward!
Andrew, thank you that sounds good. Do you know if it will allow both export and import into the standard XLIFF interchange format?
That's not something we have on the roadmap currently, but if a community member contributes it it might make it in. It also seems like a great opportunity for an add-on. It also might make it into our 5.7 version of the Internationalization Enterprise add-on.
Hi!
I'm working for a multi-national company that would like to use concrete5 for its homepage, but as such we really need the multi-lingual plugin. It's great that its coming in release 5.7.3! As we have quite a strict deadline, can you confirm that release 5.7.3 will come in 2014?
Thanks for creating a fantastic CMS that clearly beats the competition.
I'm working for a multi-national company that would like to use concrete5 for its homepage, but as such we really need the multi-lingual plugin. It's great that its coming in release 5.7.3! As we have quite a strict deadline, can you confirm that release 5.7.3 will come in 2014?
Thanks for creating a fantastic CMS that clearly beats the competition.
I would like to know this too
Me too!
This will be released in 5.7.3, which we are actively working on and hope to have available very soon.