语言
Minaya 会以访客书写的语言回复。挂件界面已翻译为六种语言环境, 阿拉伯语会翻转整个布局,而不只是文字。
支持的语言
| 语言 | 标签 | 方向 |
|---|---|---|
| 英语(英国) | en-GB | 从左到右 |
| 英语(美国) | en-US | 从左到右 |
| 英语(澳大利亚) | en-AU | 从左到右 |
| 德语 | de | 从左到右 |
| 阿拉伯语 | ar | 从右到左 |
| 中文(简体) | zh | 从左到右 |
地区变体会合理回退:en-NZ 使用澳大利亚英语,en-CA 使用美式英语,de-AT 使用德语。
语言是如何检测的
Minaya 依次检查:
<html lang="…">——你的页面所声明的语言。- URL——
/de/路径前缀,或?lang=de。 - 访客自己的浏览器偏好设置。
- 你在仪表盘的语言下设置的默认语言。
如果你的页面请求了某种语言,但你尚未启用它,系统会尽可能回退到 同一语言的另一地区版本,再回退到你的默认语言——因此,当挂件仅提供 英式英语时,一个 en-US 页面仍会得到英语回复。
当访客切换语言时
如果你的网站在切换语言时会重新加载,挂件会自动重新读取新语言。 如果切换时不重新加载——大多数 JavaScript 框架都是如此——Minaya 会 监听 <html lang> 并原地更新。
已有的消息保持原样。重新翻译对方已经读过的内容会显得突兀; 新的回复才会使用新语言。
如果你的切换器既不改变 lang 属性也不改变 URL, 可以直接告知 Minaya:
window.dispatchEvent(
new CustomEvent("minaya:language", { detail: { language: "de" } })
);
// Or ask Minaya to re-check the page:
window.dispatchEvent(new CustomEvent("minaya:language"));使用 jQuery 时,$(window).trigger() 无法触达原生 事件监听器——请按上面的方式派发事件。
回答使用什么语言
以访客自己使用的语言为准。浏览你英文网站的访客如果用阿拉伯语提问, 会得到阿拉伯语回答——这几乎总是他们想要的。页面语言只在模糊情形下 起决定作用:一句问候、单个词语、一个表情符号。
按语言设置的消息
在仪表盘的语言下,每种已启用的语言都有自己的欢迎 消息、兜底消息和转接确认消息。留空某一项,该语言就会使用 Identity 下的共享消息集,因此启用一种语言并不会强制你重新撰写三条新文案。
从右到左
阿拉伯语会镜像整个挂件:气泡左右互换,页头和输入框方向反转, 发送图标也会翻转。如果你编写了自定义 CSS,可通过 .aicb-root[dir="rtl"] 选择器进行调整。