Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We're retiring the forums!

The SilverStripe forums have passed their heyday. They'll stick around, but will be read only. We'd encourage you to get involved in the community via the following channels instead:

Releases and Announcements /

Latest news about the SilverStripe software.

Moderators: martimiz, Sean, Ed, biapar, assertchris, Willr, Ingo, swaiba, Graves

Translatable ClassName BUG?


Go to End


3 Posts   1892 Views

Avatar
maksfeltrin

Community Member, 6 Posts

13 September 2009 at 10:27am

Anyone got this problem too?

When I modify an untranslated page behaviour (ClassName), the translated pages keep the original behaviour (ClassName) so I end up with un untranslated page ( getTranslation(s) look for the same ClassName ) .

The problem is outlined with the following code:

$page->hasTranslation($some_locale) = TRUE

but

$page->getTranslation($some_locale) => NULL

Avatar
maksfeltrin

Community Member, 6 Posts

13 September 2009 at 11:14am

$page->getTranslation($some_locale, 'Stage')

works .... changes in the original language page->ClassName are stored in SiteTree not in SiteTree_Live for translated pages. You need to save & publish every translated page to have changes reflected in SiteTree_Live.

Avatar
Ingo

Forum Moderator, 801 Posts

13 September 2009 at 6:23pm

Hm, changing the classname in the original page should update all children... there's even a unit test for this:
http://open.silverstripe.com/browser/modules/sapphire/trunk/tests/model/TranslatableTest.php#l675 (Line 675).

But you're right, the changes aren't automatically published - mainly to avoid accidentally publishing changed content on the translations.