i just set up a recipe in the docs on how to achieve multlingual sites which don't rely on silverstripe's 'translatable' implementation, which poses a number of problems (buggy cms UI, non-cacheable urls...). this might be a temporary solution as things are announced to be changed in version 2.4.
i hope it's useful as an alternative approach to translatable content for smaller sites.
do you know other solutions as well? found a mistake in my script? know how to do it better?
any comments are welcome
i am using ss 2.3 and ur nice solution for multilanguage web sites. Everything works fine except for home. Request to /en/home/ or /en/ always redirects to /home and shows the default texts instead of english version. Some help to solve the problem is appreciated.
just had a glance at the controller class, seems like things have heavily changed there from 2.2 to 2.3, so my current workaround for this problem (setting urlParams['action'] to an empty string) doesn't work any more.
unfortunaltey i'm running short of time at the moment, maybe you want to give it a try (check the new controller class in sapphire), for me it will take some days until i got time to have a look at this
Hi there, i'm currently implementing this workaround to avoid the messy CMS UI crap. Problem is, translations are already entered for some pages. Is there any way to modify this workaround to load the translated text into the newly created fields under the "English" tab?
I've tried this with no success:
$fields->addFieldToTab('Root.Content.English', new TextField('SiteTree_lang.MENUTITLE', 'Navigation Label'));
$fields->addFieldToTab('Root.Content.English', new HtmlEditorField('SiteTree_lang.CONTENT', 'Content'));
What i want is to load the english content from the database, and exactly those two fields into the CMS fields so i don't have to copy and paste the english content all over again.
@ danbalbo: i've spent some time on the problem now, but it seems i'm not clever enough to understand what's going on there. problem is in sapphire\core\control\contentcontroller.php, line 93 ('Director::redirect...', redirecting '/home/' to '/'). commenting out this line will do the trick for now, but i'd really appreciate another solution without touching the core. maybe someone else can help here.
@ flowzor: don't know how to do this in silverstripe, but you might run a sql query copying the fields?