6

我正在用 2 种语言开发一个网站。

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

所以我正在寻找一个插件。

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

请建议。

4

6 回答 6

1

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

于 2013-09-21T09:58:44.817 回答
0

如果您使用的是 OS 或 OTS CMS,则可能会内置语言支持。如果您自己构建一些东西并且您有时间进行自己的语言翻译,您可以使用谷歌翻译或微软翻译来构建您的翻译文件。

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

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

JText::_('COM_SOMETHING_BLAH_TITLE');

编写自己的代码:

  1. 创建语言文件

语言.en

语言.es

  1. 在每个语言文件中添加相同的行:

(en) MESSAGE_SOMETHING="某事" (es) MESSAGE_SOMETHING="算法"

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

    打印翻译('MESSAGE_SOMETHING', 'es');

你的翻译功能可能是这样的

function translate ($label, $lang) {
$language = load_and_populate_language($lang);
$translated = $language[$label];
return (if $translated is empty, '', else $translated)
}
于 2013-09-13T13:31:26.987 回答
0

更好的是您可以使用 CMS(内容管理系统)。在 CMS 中,他们提供语言翻译设施。你可以翻译你想要的语言。它会自动翻译您的内容。

Tomato cms 是最适合您的解决方案之一……它是开源 CMS。

于 2013-08-02T12:40:39.630 回答
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 以存储该语言
  • 用户点击从站点 A 到站点 B 的链接
    • 用户带来您制作的 cookie,页面加载后谷歌翻译启动
于 2013-04-15T14:18:40.813 回答
0

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

如果站点分布在不同的域中(例如使用 iFrames),这将有点困难。

于 2013-04-18T03:39:20.157 回答
0

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

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

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

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

于 2014-02-22T19:42:19.117 回答