网站翻译

时间:2013-04-15 07:33:23

标签: php html internationalization web machine-translation

我用2种语言开发网站。

一个选项是我们可以做自己的翻译,但这可能需要更多的开发时间。

所以我想找一个插件。

我尝试了Microsoft Translator Widgetgoogle translate gadget 但两者都不适用于完整的网站。用户必须在网站的每个页面上选择他们的语言。任何其他插件都可以翻译整个网站。 我读了这么多线程 link1 link2。 注意到了帮助我。

请建议。

6 个答案:

答案 0 :(得分:1)

当用户第一次进入网站时,您所能做的就是将cookie或会话存储为用户的语言偏好 然后,您可以在每个页面上使用相同的会话,根据会话中的语言变量自动调用特定语言的Google翻译引擎。
您可以在单独的.php文件中执行此操作,并将其包含在您的所有网页中 希望能帮助到你。感谢。

答案 1 :(得分:0)

我在http://learnwithecho.com/发布了一个Google翻译插件示例。如果您在网站的每个页面上安装它,它将继续工作。您可以通过检查已加载的cookie来确认这一点。但是,如果您的内容跨越多个网站,请尝试以下内容:

  • 用户访问siteA.com/index
    • 选择替代语言
    • 此页面上的Javascript检测到Cookie并加载siteB.com/setLang.php?lang=LANG
  • 用户加载siteB.com/setLang.php
    • 返回内容类型application / javascript
    • 在siteB上设置cookie以存储该语言
  • 用户关注从siteA到siteB的链接
    • 用户带来您制作的Cookie,并在页面加载后启用Google翻译

答案 2 :(得分:0)

Microsoft Translator小部件会在同一站点的页面上保留用户的选择,因此从这个角度来看,它可以有效地翻译整个站点。

如果网站分布在不同的域中(例如使用iFrame),则会更加困难。

答案 3 :(得分:0)

最好能使用CMS(内容管理系统)。 在CMS中,他们提供语言翻译工具。 您可以翻译您想要的语言。 它会自动翻译您的内容。

番茄cms是您解决方案中最好的之一... 它是开源CMS。

答案 4 :(得分:0)

如果您使用的是操作系统或OTS CMS,则可能会内置语言支持。如果您自己构建某些内容并且有时间进行自己的语言翻译,则可以使用Google翻译或Microsoft翻译来构建翻译文件。

Null有一个很好的评论,这只是扩展更多:

Joomla& PHPBB有很好的语言实现示例。

JText::_('COM_SOMETHING_BLAH_TITLE');

编写自己的代码:

  1. 创建语言文件
  2. language.en

    language.es

    1. 在每个语言文件中添加相同的行:
    2. (en)MESSAGE_SOMETHING =“Something” (es)MESSAGE_SOMETHING =“Algo”

      1. 创建一个类或函数来打印语言文本:

        print translate('MESSAGE_SOMETHING','es');

      2. 你的翻译功能可能就像

        function translate ($label, $lang) {
        $language = load_and_populate_language($lang);
        $translated = $language[$label];
        return (if $translated is empty, '', else $translated)
        }
        

答案 5 :(得分:0)

只是一个建议,但也许你会发现自己提供翻译然后有一个客户端语言翻译很有用?我为此目的编写了这个插件,因为自动翻译的质量达不到我想要的水平。

https://github.com/coolbloke1324/jquery-lang-js

该插件跨页面具有语言持久性,允许短语和基于正则表达式的匹配,可以处理任意数量的语言选项,并允许您触发所描述的点击事件的更改。

您可以在https://www.orbzu.com上看到它被实时使用(查看页面左上方的标志图标,然后选择一种新语言以查看页面上的文字自动更改。)