1

我正在使用 Transposh Wordpress 插件来制作双语网站。

该插件带有一个下拉语言选择器,但我想在导航中放置一个链接,以在两种语言之间切换网站。

默认站点是英文的,示例页面可能是 xxx.com/page

另一种语言是葡萄牙语,翻译页面位于 xxx.com/pt/page

所以我希望链接在这两个值之间切换:

<a href="example.com/pt/page">Português</a>

<a href="example.com/page">English</a>

jQuery 最好做到这一点吗?

提前致谢!

4

2 回答 2

2

当您使用此“example.com/pt/page”链接加载页面时,将链接的 href 和文本更改为英文。当您使用“example.com/page”加载页面时,将 href 和 text 更改为 Português。

<a id="lang" href="example.com/pt/page">Português</a>

$(document).ready(function() {
    var winLocation = window.location;
    var loc = winLocation + "";
    if(loc.indexOf("example.com/pt/page") != -1) {
       $("#lang").prop("href", "example.com/page");
       $("#lang").text("English");
    }
    else {
       $("#lang").prop("href", "example.com/pt/page");
       $("#lang").text("Português");
    }
});

更新:如果您想将此链接添加到您网站的所有页面,则:

1)为所有链接设置类。像这样:

<a class="lang" href="anything">anything</a>

2) 现在像这样修改 jQuery 处理程序:

$(document).ready(function() {
    var winLocation = window.location;
    var loc = winLocation + "";
    if(loc.indexOf("/example.com/pt/") != -1) {
       $(".lang").prop("href", loc.replace("/example.com/pt/", "/example.com/"));
       $(".lang").text("English");
    }
    else {
       $(".lang").prop("href", loc.replace("/example.com/", "/example.com/pt/"));
       $(".lang").text("Português");
    }
});

假设您的葡萄牙语页面位于“example.com/pt/”网址下,英文页面位于“example.com/”下

于 2012-03-20T04:41:25.393 回答
1

由于我编写了那个插件(Transposh),我认为最好的方法是编写一个简单的小部件来做你想做的事,这可能是一行代码。在您的后端正确运行,并按照您的意愿进行操作。

该指南在这里: http ://trac.transposh.org/wiki/WidgetWritingGuide

您可以检查发送到那里的结构的 is_active 以提供您想要的。

玩得开心

于 2012-03-20T20:00:10.387 回答