【发布时间】:2016-09-10 22:04:24
【问题描述】:
我想知道如何让 allowed_actions 匹配网站的 i18n 语言。我看到的所有模块都没有提供该选项。
使用案例:我制作了一个表单页面提交模块,我想将提交的页面 url 'finished'(英语,EN)翻译成另一种语言,如我的 'termine'(法语,FR)。
网址://example/contactpage/finished
到
网址://example/contactpage/termine
感谢您的建议!
【问题讨论】:
-
我对银条一无所知,这不是答案。但我向你保证,你会遇到这种方法的麻烦。你会发现有几种语言使用同一个词,有时用于相同的概念,有时用于不同的概念。你打算如何处理?
-
@MihaiNita 我不确定如果页面的 URL 也被翻译(这可以在 SilverStripe 中实现)是否会成为问题。示例:
https://site.tld/{translate.contact}/{translate.contact_finished}-> (en_GB)https://site.tld/contact/finished-> (sv_SE)https://site.tld/kontakt/genomford。只要翻译得好,我认为不会有任何混淆。但我可能误解了这个问题。 -
两种不同的语言最终可能使用相同的 URL。例如“帮助”被翻译成荷兰语为......“帮助”。所以site.tld/help 页面应该带你到哪个页面,英语还是荷兰语?您可能会说“.tld 是特定于国家/地区的”。也许。但它也可能发生在多语言国家,如加拿大或瑞士。法语中的“页面”是……“页面”。所以site.ca/page 将带您到... 您需要语言 ID 作为子路径:site.ca/fr/page vs site.ca/en/page
-
@Mihai Nita:好的,我明白你的意思。但不要担心。我制作的模块首先用于单一语言并配置到主配置文件中。我认为我的模块不会与另一个多语言模块一起修改......这不是我现在的期望。谢谢回复!
标签: internationalization silverstripe