studiobosco/wn-translate-extended

Winter CMS 的插件,扩展了默认的 Translate 插件的功能

安装: 802

依赖: 0

建议者: 0

安全性: 0

星级: 0

分支: 1

类型:winter-plugin

dev-main 2023-06-07 17:27 UTC

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