【问题标题】:How can I tell Google Translate to not translate a section of a website?如何告诉 Google 翻译不要翻译网站的某个部分?
【发布时间】:2012-03-26 13:49:54
【问题描述】:

谷歌翻译有一个developer tool,可以在网站上启用谷歌翻译。有没有办法告诉谷歌翻译不要翻译网站的一部分?也许在 HTML 元素上有一个类名?

我已经尝试过HTML5 translate=no 属性。没有效果。

这是一个特殊的问题,因为 Google 误译了网站名称。

【问题讨论】:

  • 我点击了您提供的链接,我看到的第一件事是“将翻译添加到整个网页”和“将翻译添加到网页的一部分”。您不能以第二种方式提供所需结果的方式构建您的 html 吗?
  • 不幸的是,选择“将翻译添加到网页的某个部分”会删除非常理想的“第 3 步:显示可选设置”。

标签: javascript html google-translate


【解决方案1】:

您可以将网站名称设为图片。

【讨论】:

  • @GeoffreyBooth 也许他在过去的 3 年里学到了很多东西?你知道,实际上这个东西的一个主要组件叫做stackoverflow。
  • 这个建议让我很开心:D
  • 我不知道你当时的声誉如何,但我想知道你为什么不直接删除这个答案?
  • 我猜他是 Stackoverflow 上最伟大的巨魔之一
  • @AhmetCanGüven 这似乎只是拖钓,因为它是一种解决问题的解决方法有缺点(所有可视化)。鉴于当时似乎没有其他选择,这是有道理的。真正有趣的是上面的答案通过禁用页面上的所有翻译来“解决”问题,但人们认为这比插入带有 alt 标签的内联图像要少。我将这个答案作为“当你唯一的工具是锤子时,一切看起来都像钉子”这句话的例子。
【解决方案2】:

根据Google instructions,设置class="notranslate" 会阻止谷歌翻译。这似乎可行,但内联使用它(例如,用于单个单词)可能意味着一些混淆,因此您需要检查会发生什么。

例如,

Welcome to the <span class="notranslate">Cool</span> company website!

翻译成西班牙语为“Bienvenido a la Coolweb de la compañía!”,虽然这表明“Cool”已被视为一个专有名称,但这并不酷;如果没有标记,文本将翻译为“Bienvenido a la fresca web de la empresa!”。

将文本改写为

Welcome to the website of <span class="notranslate">Cool</span>!

将导致“Bienvenido a la página web de Cool!”,除了“site”被误译外,它看起来更好。

对于不同的目标语言,可能并且将会出现不同的问题。一般来说,一个句子的语法结构越简单,它就越容易翻译得相当好。

底线是:您可以尝试使用class=notranslate 阻止翻译,但谷歌翻译的问题可能会引起混淆。

【讨论】:

  • 好的,谢谢!关于翻译不好的句子的其余部分 - 使用这个小工具(正如谷歌所说的那样),如果您使用定义为“所有者" 或 "编辑器"
  • 他们自己的代码也使用了 class="skiptranslate" 也可以。
【解决方案3】:

只是一个快速更新,HTML5 translate="no" 属性现在似乎可以正常工作:)

我在一个简单的 HTML 中对其进行了测试,并传递给了翻译器,它似乎可以接受这两种形式的指令(该类也可以正常工作)

【讨论】:

  • 在 chrome 上对我不起作用,而在课堂上却可以。就我而言,我将它设置在 上,因此里面的所有内容都不会被翻译。
  • 我认为这取决于您翻译页面的方式。在我使用谷歌翻译页面时,我不知道 chrome 的翻译栏是如何处理的,因为根据MDN 它根本不支持浏览器。我只在 span 元素上对其进行了测试,所以不知道翻译器如何处理其他元素。
  • 在 MDN 上的兼容性仍然没有改变,没有浏览器支持。它仍然适用于谷歌翻译。
  • @gman 是的,谷歌似乎破坏了他们的翻译器。 notranslate 类仍然按预期工作。但是我希望他们在某个时候修复它,因为该属性仍在 HTML5 规范中。
  • 它对我不起作用,但class="notranslate" 起作用了。
【解决方案4】:

要禁用整个页面的翻译,请在标题中尝试:

<meta name="google" content="notranslate" />

来自Meta tags that Google understands(我加粗):

当我们识别出页面内容不是该语言时 用户可能想要阅读的内容,我们通常会提供一个链接 搜索结果中的翻译。一般来说,这会给你 有机会向更大的用户提供您独特且引人入胜的内容 用户组。但是,在某些情况下,这不是 想要的。 此元标记告诉 Google 您不希望我们提供 此页面的翻译

【讨论】:

    【解决方案5】:

    使用&lt;span class="notranslate"&gt;&lt;/span&gt; 会停止翻译,但不会抑制弹出窗口。

    我使用 Chrome 的“翻译成英语”上下文菜单来查看正在翻译的单词。

    我的网站使用了“障碍”一词。谷歌想要将法语翻译成英语,建议将“Handicaps”改为“Disabilities”。为“Player Handicap”删除“Handicaps”解决了我的问题。

    【讨论】:

      猜你喜欢
      • 2023-01-28
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多