我想制作一个多语言网站,以便所有或几乎所有页面都提供 2 种或更多翻译版本。要遵循的最佳实践是什么?
例如,我考虑以下语言选择机制:
- 基于 Cookie 的首选语言选择。
Accept-Language
如果未设置 cookie,则基于标头。- 否则(可能)基于 GeoIP。
还有别的事吗?
应该如何提供不同的翻译?
- 作为
LANG.example.com/page
- 作为
example.com/LANG/page
- 作为
example.com/page?hl=LANG
- ...
- 以上任何一个重定向到
example.com/page
?(好像很气馁)
如何确保所有翻译都被正确索引?
- 包含所有页面 + 正确
Content-Language
标题的站点地图就足够了吗?
让用户知道还有其他翻译但不分散他们注意力的最佳方式是什么?
- 在页眉/页脚/侧边栏中列出可用语言(如维基百科)
- 将“选择语言”选择器放在内容旁边
处理缺失/过时翻译的最佳策略是什么?
- 根本不显示丢失的页面或以不同的语言显示页面?
- 显示旧翻译、带有警告的旧翻译或不同语言的页面?
我还应该考虑什么?我应该做什么,绝对不应该做什么?