语言切换器 - 链接URL变化(Language switcher - link changes U

2019-09-29 10:48发布

我使用的是通过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的最好这样做呢?

提前致谢!

Answer 1:

当你用这种“example.com/pt/page”链接加载页面,更改链接到英文的href和文字。 而当你用“example.com/page”加载页面,更改href和文本葡萄牙语。

<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/” URL和英文网页来下“example.com/”



Answer 2:

因为我写的插件(通过Transposh)我认为你最好的办法是写一个简单的小工具,你想这样做,这将可能是一个单一的代码行。 正确的后端运行,照你所愿。

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

您可以检查派有提供你想要什么样的结构IS_ACTIVE。

玩得开心



文章来源: Language switcher - link changes URL