studiobosco / wn-translate-extended
Winter CMS 的插件,扩展了默认的 Translate 插件的功能
Requires
- php: >=5.5.9
- composer/installers: ~1.0
This package is not auto-updated.
Last update: 2024-09-25 23:54:22 UTC
README
此插件扩展了 Winter 的 Translate 插件的默认行为(https://github.com/wintercms/wn-translate-plugin),以下是一些功能:
- 检测浏览器语言(可选)
- 显示(并保存到会话中)最偏好的浏览器语言,而不是默认语言(可选)
- 在每次访问时强制检测浏览器语言(可选)
- 为所有路由添加 SEO 友好的地区简码(可选)
用法
Translate 插件有两种显示翻译内容的场景
http://website/lang/
将显示具有 'lang' 简码的语言的网站。http://website/
将显示网站,除非用户选择首选语言,否则将显示默认语言
安装 Translate Extended 后,当您访问主页 URL
- 插件将获取最偏好的用户语言(从浏览器设置中),并尝试与 Rainlab 的 Tranlsate 插件中启用的翻译进行匹配
- 如果找到匹配项,此首选项将被保存到用户会话中,并立即显示
- 如果没有找到匹配项,网站将以默认语言(来自 Rainlab 的 Tranlsate 插件设置)显示
- 路由将是 SEO 友好的,将自动添加适当的语言简码
更改路由后,它将自动添加所选语言的前缀。如果手动在地址栏中输入语言 URI,它将被保存到用户会话中并立即显示。
注意:默认情况下,最偏好的浏览器语言在首次访问时保存到用户会话中。因此,下次用户进入网站时,地区将不会自动检测(它将从用户会话中恢复)。在后台区域的 Translate Extended 设置中,有强制在每次访问时进行语言检测的可能性。
扩展地区选择器
插件中有一个自定义地区选择器组件。如果您想在 URL 中使用地区前缀,Rainlab 的 Translate 的默认地区选择器可能无法正常工作。扩展地区选择器“强制”正确的地区前缀,因为它使用 href 属性而不是 AJAX 处理程序。
设置
Translate Extended 在后台区域的“翻译”类别下(因此与 Translate 插件设置位于同一位置)提供一些设置
语言简码
为了正常工作,Translate Extended 需要在 Rainlab 的 Tranlsate 插件中设置正确的语言代码。语言代码需要与在 HTTP 头 "HTTP_ACCEPT_LANGUAGE" 中传输的 ISO 639 语言代码相同。http://www.metamodpro.com/browser-language-codes