-
Notifications
You must be signed in to change notification settings - Fork 821
-
Notifications
You must be signed in to change notification settings - Fork 821
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Template translate does not work as expected #1354
Comments
I wonder if its the case that language files in themes are not read, try moving it to mysite/lang/en.yml see if that works. Likely the manifest does not look in themes for language files. |
You're right! I moved YAML content into mysite YAML files and everything is ok, now. So it's a bug!
generates the english YAML file into themes/mySimple, but SS will never read it and it's translated counterpart. |
Ya i18nTextCollectorTask should be putting it into your site project for themes and not in the theme |
Maybe is better that theme folder is readed during translation, so it will be possible to translate templates. |
Main problem with that is that themes aren't interpreted like modules, which is what i18n uses to look up the available translations. If I'm correct i18n uses getModules() from the manifest see https://github.com/silverstripe/sapphire/blob/3.0/i18n/i18n.php#L1695 for example. |
You're right, but themes have to be translated in some way, so I think that's a quite big SS issue. |
bump. any progress on this issue? |
Seems like this issue is solved in at least 3.1.6. /dev/tasks/i18nTextCollectorTask?module=themes/mytheme collects stuff |
@wernerkrauss are you happy for us to close the issue, then? |
As @wernerkrauss stated this issue seems solved in 3.1.6 |
It seems that the problem is still around in 3.1.8 |
I confirm that this error persists on 3.1.8 version |
I've just tried this out in the 3.1 branch, works for me. Check |
I can confirm this bug. My /themes/mytheme/lang/nl.yml file was not recognized. When I added the same content to my mysite/lang/nl.yml file everything worked fine. I created the translation in a template file (Includes/Navigation.ss)
My nl.yml file looks as follows
I am running the latest silverstripe version. |
@tractorcow thoughts on this? You recently did work on this stuff |
Yep, there's a bug in theme language files. I've updated the string detection code considerably, but it looks like localisation in the themes folder isn't working. You might be better to move your strings to |
Regression in 4.x i18n rewrite. Can’t test this since ThemeResourceLoader hardcodes constants like THEME_DIR, so its impossible to mock in different directory structures. Ideally this would use an application object with access to environment variables, but that’s too much of a refactor to validate this simple fix.
I'm not sure if that's still an issue in 3.x, but it was definitely a regression in 4.x - which I've fixed with #6628 |
…lang-dirs Absolute paths for theme lang dirs (fixes #1354)
What stated in documentation http://doc.silverstripe.org/framework/en/3.1/topics/i18n#usage-in-template-files doesn't work.
sake /dev/tasks/i18nTextCollectorTask --- Running Task i18n Textcollector Task --- (no more output)
sake /dev/build "flush=all"
not working...
The text was updated successfully, but these errors were encountered: