在网站上使用多种语言的最佳方式是什么?

2023-12-31

我想知道实现基于多语言模板的网站的最佳方法是什么。假设我想提供英语和德语网站,有一些不同的方法。我的兴趣主要是SEO,所以这对于搜索引擎来说是最好的方式。

我经常看到的第一种方法是为每种语言使用不同的目录,例如 www.example.com 用于英语翻译,www.example.com/de/ 用于德语翻译。这样做的缺点是:当更改文件时,必须手动更改每个目录中的ist。对于搜索引擎来说,这两个目录会被视为重复内容,不是吗?

我知道的第二种方法是使用一些 GET 值,例如 www.example.com?lang=de,然后设置 cookie。但这样搜索引擎可能甚至找不到不同的语言。

那么还有其他方法或者哪种方法最好?


直到今年我一直在国际化网站上工作。我们一直从 SEO 专家那里得到的建议是根据 URL 来区分语言 - 例如 www.example.com/en 和 www.example.com/de。

我认为这对用户来说也更好;如果我为德语页面添加书签,那么当我返回该页面时,即使我的 cookie 已过期,我也会看到德语页面。同样,我可以做一些事情,比如在 Facebook 上发布 URL,然后让我的德语朋友点击它并获得一个德语网站。

请注意,如果您的网站服务于多个国家/地区,您应该将这些与语言一起处理 - 因此,您可能有 example.com/de-DE、example.com/en-GB、example.com/en-IE 等。

然而,这不应涉及重复。相反,您应该将应用程序设置为处理 URL、提取区域设置信息,然后在内部将请求转发到与区域设置无关的页面。因此,对 example.com/de-DE/info 的请求和对 example.com/en-IE/info 的请求都应该传递到 /info.jsp (或者我猜你的情况是 info.php )。然后应该使用页面级本地化机制对该页面进行编码,以适当的语言发出文本。

如果您希望 URL 本身本地化(例如 example.org/de-DE/anmelden 与 example.org/en-IE/sign-in),事情会有点棘手。然而,同样的原则适用:提取区域设置,然后转发到公共页面。不同之处在于,从 URL 中找出页面的内容必须更加复杂;您将需要从 URL 中的自然语言到页面文件名的映射。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在网站上使用多种语言的最佳方式是什么? 的相关文章