I am using the Transposh Wordpress plugin to make a site bilingual.
The plugin comes with a dropdown language selector, but I would like to instead place a link in the navigation that toggles the site between the two languages.
The default site is in English, and an example page might be xxx.com/page
The other language is Portuguese, with the translated page at xxx.com/pt/page
So I would like the link to toggle between these two values:
<a href="example.com/pt/page">Português</a>
and
<a href="example.com/page">English</a>
Would jQuery be best to do this?
Thanks in advance!
When you load your page with this "example.com/pt/page" link, change the href and text of the link to English. And when you load the page with "example.com/page", change the href and text to 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");
}
});
Update: If you want to add this link to all pages to your site, then:
1) set class for all the links. Like this:
<a class="lang" href="anything">anything</a>
2) Now modify the jQuery handler like this :
$(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");
}
});
Assuming, your Português pages comes under "example.com/pt/" urls and English pages comes under "example.com/"