【问题标题】:How to develop the site to switch between multiple languages?如何开发网站在多种语言之间切换?
【发布时间】:2013-04-12 12:03:45
【问题描述】:

我用html5开发了网站。在这我有一个语言选择选项,现在它是英语。如果我选择任何其他语言,那么它应该以该语言显示内容。我不想使用谷歌翻译器来翻译内容。我有所有语言的内容。 html5 或 HTML 中是否有任何标签或方法来获取和显示特定于该语言的内容?

【问题讨论】:

  • 假设选择了语言的下拉列表时,您需要加载相应的语言html文件。
  • 你可能想看看this
  • 谢谢桑迪普。是否,1)我需要为每种语言提供不同的 html 文件? 2)我只需要不同文本文件中的内容(英语/德语)而没有html标签吗?哪个是可能的工作逻辑?
  • 我们有可以在服务器上使用 i18n 或在客户端使用 javascript 更改的占位符。根据您可以执行的文本数量

标签: javascript html internationalization multilingual


【解决方案1】:

您可以使用 Javascript 本地化(这是您的标签之一,所以我猜您会使用它)。

您可以做的是快速检查用户的语言环境,从而用匹配的内容本地化填充页面。

这是一个快速而肮脏的例子。 (注意:这纯粹是动态的)

locale = (navigator["language"] || "en").split("-")[0];

localization = {
    "de": "Hallo Benutzer!",
    "en": "Hey user!"
};

text = localization[locale] || localization["en"];

e = document.createElement("span");
e.innerHTML = text;
document.body.appendChild(e);

【讨论】:

  • 注意:".split("-")[0]" 确保我们得到一个纯字符串。用户的语言环境通常由语言国家指定。也就是说,例如“en-US”或“de-DE”;如果我们只需要指定不依赖于国家/地区的本地化,我们就可以开始了。
  • 除非我讨厌我的邮件界面更改为他们在我所在国家/地区使用的任何语言。请确保有一个可以点击的标志和一个 cookie 来记住我的选择
  • 这不是你喜欢什么的问题——如果你想要更多,就实施更多。
【解决方案2】:

如果您的网站是静态网站,那么您可以使用特定语言的内容为每种语言克隆您的网站,并使用不同的基本网址(domain/en/...、domain/es/. ...)。

【讨论】:

  • 是的,我的页面是静态的。但是我的站点中有 50 多个文件。如果我需要克隆到每种语言,那么它需要更多的工作和更多的文件。是否有任何工具或插件或 JavaScript 函数可以根据语言选择从 xml 或文本文件中检索内容?
【解决方案3】:

您需要将您的网页翻译成您想要的任何语言。

复制每种语言的整个网络结构,以便最终得到

www.example.com/en/.. www.example.com/fr/..

通常人们会使用一个标志来指示语言并重定向到相应的语言页面。

【讨论】:

    【解决方案4】:

    没有。

    HTML 允许您使用lang 属性指定您正在使用的语言,但它不提供(手动或自动)翻译的特定功能。

    【讨论】:

    • 感谢您的回复。那么如何让访问者切换语言进行选择呢?我是否需要为每种语言创建网站?
    • 通常会混合使用特定于语言的代码和共享代码。 stackoverflow.com/questions/tagged/multilingual 是一个有用的起点。
    猜你喜欢
    • 2021-06-24
    • 1970-01-01
    • 2014-02-07
    • 1970-01-01
    • 2018-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多