网站翻译[关闭]
Posted
技术标签:
【中文标题】网站翻译[关闭]【英文标题】:Translator for website [closed] 【发布时间】:2013-04-07 06:07:37 【问题描述】:我正在开发 2 种语言的网站。
一种选择是我们可以自己翻译,但这可能需要更多的开发时间。
所以我正在努力寻找一个插件。
我试过Microsoft Translator Widget 和google translate gadget 但两者都不适用于完整的网站。用户必须在网站的每个页面上选择他们的语言。任何其他插件都可以翻译整个网站。 我读了很多线程,比如 link1 link2 。 注意帮助了我。
请建议。
【问题讨论】:
唯一更好的方法是用两种语言编写不同的语言并存储在数据库中并存储在 cookie 中选择语言并根据 cookie 显示内容......并且没有任何好的翻译器 感谢您的评论。 谷歌“I18N”了解更多关于 NullPointer 的信息。 @NullPoiиteя > 更好的选择是将每种语言的字符串存储在单独的文件中,并根据用户选择的选项包含适当的字符串。此选项更好,因为数据库查询需要更多时间,并且您将传输大量数据。:)
@rktcool,我不是专家,但我听说很多我尊重的人和消息来源鼓励使用数据库来处理大量数据或提高速度。一个很好的迹象是 LAMP(Linux、Apache、mysql、Perl)在网站上的流行。例如,Wordpress 使用 MySQL 来存储帖子。必须正确设置数据库才能利用它可以提供的好处,但是一旦这样做,它就会比从文件系统中读取要快得多。存储来自用户的输入(如所有这些 *** 问题、答案、cmets 和投票)也需要它。
【参考方案1】:
只是一个建议,但也许您会发现自己提供翻译然后让客户端语言翻译器很有用?我正是为此目的编写了这个插件,因为自动翻译的质量达不到我想要的水平。
https://github.com/coolbloke1324/jquery-lang-js
该插件具有跨页面的语言持久性,允许基于短语和正则表达式的匹配,可以处理任意数量的语言选项,并允许您按照您的描述从点击事件触发更改。
您可以在https://www.orbzu.com 上看到它正在实时使用(查看页面左上角的标志图标,然后选择一种新语言以查看页面上的文本自动更改)。
【讨论】:
【参考方案2】:您所能做的就是在用户首次进入网站时将 cookie 或会话存储为用户的语言偏好。 然后,您可以在每个页面上使用相同的会话,根据会话中的语言变量自动调用特定语言的谷歌翻译引擎。 您可以在单独的 .php 文件中执行此操作,并将其包含在您的所有网页中。 希望能帮助到你。谢谢。
【讨论】:
【参考方案3】:如果您使用的是操作系统或 OTS CMS,则可能会内置语言支持。如果您自己构建一些东西并且您有时间进行自己的语言翻译,您可以使用谷歌翻译或微软翻译来构建您的翻译文件。
Null 有一个很好的评论,这只是扩展更多:
Joomla 和 PHPBB 有很好的语言实现示例。
JText::_('COM_SOMETHING_BLAH_TITLE');
编写自己的代码:
-
创建语言文件
语言.zh
语言.es
-
在每个语言文件中添加相同的行:
(zh) MESSAGE_SOMETHING="某事" (es) MESSAGE_SOMETHING="算法"
创建一个类或函数来打印语言文本:
打印翻译('MESSAGE_SOMETHING', 'es');
您的翻译功能可能类似于
function translate ($label, $lang)
$language = load_and_populate_language($lang);
$translated = $language[$label];
return (if $translated is empty, '', else $translated)
【讨论】:
【参考方案4】:最好使用 CMS(内容管理系统)。 在 CMS 中,他们提供语言翻译设施。 你可以翻译你想要的语言。 它会自动翻译您的内容。
Tomato cms 是最适合您的解决方案之一... 它是开源 CMS。
【讨论】:
【参考方案5】:Microsoft Translator 小部件将用户在同一站点上的页面中的选择保持不变,因此从这个角度来看,它确实有效地翻译了整个站点。
如果站点分布在不同的域中(例如使用 iFrames),会有点困难。
【讨论】:
【参考方案6】:我在http://learnwithecho.com/ 发布了一个谷歌翻译插件的例子。如果您在网站的每个页面上安装它,它将继续工作。您可以通过检查 cookie 是否已加载来确认这一点。但是,如果您的内容跨越多个站点,请尝试以下操作:
用户访问siteA.com/index 选择备用语言 此页面上的 javascript 检测 cookie 并加载 siteB.com/setLang.php?lang=LANG 用户加载 siteB.com/setLang.php 返回内容类型application/javascript 在站点 B 上设置 cookie 以存储该语言 用户点击从站点 A 到站点 B 的链接 用户带来了您制作的 cookie,并且在页面加载后谷歌翻译启动【讨论】:
以上是关于网站翻译[关闭]的主要内容,如果未能解决你的问题,请参考以下文章