推出 GTranslate 捆绑包
Source: Dev.to
“语言是文化的路线图。它告诉你其人民来自何处以及将去向何方。” – Rita Mae Brown
介绍
在当今的全球网络中,多语言可访问性不是奢侈品,而是必需品。 在现代框架中翻译内容可能耗时,尤其是当你想要快速得到结果而不想处理复杂的 API 或翻译文件时。
AddWeb GTranslate Bundle 为 Symfony 开发者提供轻量级、即插即用的 GTranslate.io 小部件集成,使得可以直接在 Twig 模板中实现即时的多语言支持。
什么是 GTranslate Bundle?
addweb/gtranslate-bundle 是一个兼容 Symfony 6.4+/7.x 的模块,能够:
- 集成 AI 驱动的 GTranslate.io 小部件。
- 暴露 Twig 函数
{{ gtranslate_widget() }}用于渲染可自定义的翻译小部件。 - 使用简洁的 YAML 配置来设置支持的语言、默认语言和 UI 偏好。
- 注入优化的 JavaScript,实现即时语言切换,无需后端复杂处理。
安装
composer require addweb/gtranslate-bundle
基本用法
在 Twig 布局的任意位置添加小部件:
{{ gtranslate_widget() }}
为什么这很重要?
- 用户偏好: 65 % 的用户更喜欢使用自己的语言浏览内容,即使翻译质量较低。 (CSA Research)
- 转化影响: 40 % 的用户不会在使用其他语言的网站上购买。
- 参与度提升: 多语言站点的会话时长可长达 50 %。
- SEO 好处: 支持多语言的站点在 Google 国际搜索结果中的排名高出 23 %。
这些统计数据显示,语言可访问性直接影响参与度、信任度和收入。
工作原理
- 安装 via Composer.
- Symfony Flex 自动创建
config/packages/gtranslate.yaml. - 该 bundle 在全局注册 Twig 函数。
- 当渲染
{{ gtranslate_widget() }}时,bundle 会注入浮动小部件所需的 HTML 和 JavaScript。 - 配置更改会立即生效——无需清除缓存或重新构建。
默认行为 – 即时设置
安装后:
composer require addweb/gtranslate-bundle
Symfony Flex 会添加:
# config/packages/gtranslate.yaml
# (generated automatically)
现在您可以在任何位置放置小部件:
{{ gtranslate_widget() }}
该小部件会以浮动的 GTranslate 控件形式出现,使用默认设置。
自定义小部件
修改 config/packages/gtranslate.yaml 以符合您的设计:
gtranslate:
script_src: 'https://cdn.gtranslate.net/widgets/latest/dwf.js'
auto_wrapper: true
settings:
default_language: 'en'
languages: ['en', 'fr', 'it', 'es']
wrapper_selector: '.gtranslate_wrapper'
switcher_horizontal_position: 'right'
switcher_vertical_position: 'top'
自定义选项
- 添加或移除支持的语言。
- 更改小部件的颜色和位置。
- 在浮动小部件和嵌入式小部件之间进行选择。
- 禁用自动包装器并手动放置切换器。
手动放置示例
在特定容器内渲染小部件:
{{ gtranslate_widget({ auto_wrapper: false }) }}
根据需要添加自己的 CSS 来为容器设置样式。
统计
- 多语言网站的平均会话时长提升最高可达 50 %。
- Source: Weglot Blog
- 多语言登录页面的转化率提升 14 %。
- Source: Landingi
- 超过 7 成 的消费者更倾向于与使用其语言的品牌互动。
- Source: CSA Research
关键要点
- Zero configuration overhead:安装,配置 YAML,部件即可工作。
- Supports 100+ languages via GTranslate.io:支持 100 多种语言,通过 GTranslate.io。
- No local translation files or databases required:无需本地翻译文件或数据库。
- Fully extensible and open‑source – contributions welcome:完全可扩展且开源——欢迎贡献。
有趣的事实
- 互联网托管的内容超过 7,000 种语言。
- Source: Ethnologue
- AI 翻译准确率自 2018 年以来已提升至超过 92 %,得益于神经模型。
- Source: Google Research
- GTranslate.io 目前支持超过 100 种语言,是覆盖面最广的之一。
- Source: GTranslate.io
- 使用 GTranslate 小部件的网站加载速度比使用完整 i18n 设置和翻译目录的网站快1.8 倍。
FAQs
Q1: 这与 Symfony 翻译组件有什么不同?
A: 该 bundle 通过 GTranslate.io 提供即时的客户端翻译,无需翻译文件、消息目录或后端地区处理。
Q2: 它需要 GTranslate API 密钥吗?
A: 不需要。该小部件使用公共的 GTranslate 脚本即可开箱即用。
Q3: 它与 Twig 主题兼容吗?
A: 兼容。{{ gtranslate_widget() }} 函数可以放置在任何 Twig 模板中。
Q4: 我可以自定义小部件的位置或颜色吗?
A: 当然可以。通过在 gtranslate.yaml 的 settings 部分进行调整,或在手动放置时使用自定义 CSS。
“翻译是一种把一切都改变,却让一切保持不变的行为。” – Günter Grass
结论
AddWeb GTranslate Bundle 将您的 Symfony 应用程序与全球受众连接起来,以最小的工作量提供多语言支持。探索 Packagist 上的包并通过 GitHub 贡献:
- Packagist:
addweb/gtranslate-bundle - GitHub: