【发布时间】:2012-09-23 21:19:04
【问题描述】:
我有一个客户的网站,我们通过标志图标提供指向 Google 翻译的链接。我想提供一个从翻译结果返回到原始语言(英语)的链接。
你可以在tesselaar.com的任何页面的右上角看到我到目前为止所做的工作
如果您单击其中一个标志,页面将被翻译,并且标志图标将替换为英文版本。我希望这个标志能链接回来,但正如你所见,它不会,因为谷歌翻译正在重写我给它的 URL。有谁知道如何解决这个问题?
这是我的代码:
<?php
echo "<ul class=\"breadcrumb pull-right\">\n";
if (stripos($_SERVER['HTTP_REFERER'], "translate.google") !== false) { // page has been translated
if (empty($_SESSION['return_url'])) $_SESSION['return_url'] = "tesselaar.com";
echo "<li>View page in English:</li>\n";
echo "<li><a target=\"_top\" href=\"http://" . $_SESSION['return_url'] . "\"><img src=\"/assets/img/flags/gb.gif\" width=\"16\" height=\"11\" title=\"English\" alt=\"English\"></a></li>\n";
} else { // regular site (not translated)
$_SESSION['return_url'] = $_SERVER['REQUEST_URI'];
echo "<li>Translate this page:</li>\n";
echo "<li><a href=\"http://translate.google.com/translate?sl=en&tl=fr&u=tesselaar.com". $_SERVER['REQUEST_URI'] . "\"><img src=\"/assets/img/flags/fr.gif\" width=\"16\" height=\"11\" alt=\"French\"></a></li>\n";
echo "<li><a href=\"http://translate.google.com/translate?sl=en&tl=de&u=tesselaar.com". $_SERVER['REQUEST_URI'] . "\"><img src=\"/assets/img/flags/de.gif\" width=\"16\" height=\"11\" alt=\"German\"></a></li>\n";
echo "<li><a href=\"http://translate.google.com/translate?sl=en&tl=nl&u=tesselaar.com". $_SERVER['REQUEST_URI'] . "\"><img src=\"/assets/img/flags/nl.gif\" width=\"16\" height=\"11\" alt=\"Dutch\"></a></li>\n";
echo "<li><a href=\"http://translate.google.com/translate?sl=en&tl=es&u=tesselaar.com". $_SERVER['REQUEST_URI'] . "\"><img src=\"/assets/img/flags/es.gif\" width=\"16\" height=\"11\" alt=\"Spanish\"></a></li>\n";
echo "<li><a href=\"http://translate.google.com/translate?sl=en&tl=el&u=tesselaar.com". $_SERVER['REQUEST_URI'] . "\"><img src=\"/assets/img/flags/gr.gif\" width=\"16\" height=\"11\" alt=\"Greek\"></a></li>\n";
}
echo "</ul>\n\n";
?>
编辑:自发布以来我尝试过的事情,但没有成功:
- 在“notranslate”跨度中包装各种内容。
- 使用jQuery尝试重写“链接返回”URL。
- 使用jQuery拦截“链接返回”点击并重写父框架。
【问题讨论】:
-
以防万一有人查看该站点并想知道其中的差异:在尝试了各种 jQuery 解决方案(都不起作用)之后,我现在已经放弃并禁用了标志和返回链接。
标签: php google-translate