如何改变像按钮文字语言的Facebook

时间:2014-10-23 13:52:33

标签: facebook facebook-javascript-sdk

我的网站有8种语言版本。我希望类似按钮的文本(如You like this. ...等)采用语言环境语言。

我搜索了很多,唯一的解决办法似乎是改变这个js.src

js.src = "//connect.facebook.net/en_US/sdk.js";

js.src = "//connect.facebook.net/de_DE/sdk.js";

如果我想要德语文本。但它不能动态加载它吗?我必须提供js.src的所有8个版本吗?

1 个答案:

答案 0 :(得分:0)

所以,这是我在joomla网站上使用的代码:

<script>(function(d, s, id) {
  var lang = "<?php echo JFactory::getLanguage()->getTag();?>";  
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  if (lang !="en-GB"){
  js.src = "//connect.facebook.net/de_DE/sdk.js#xfbml=1&version=v2.8";
  } else {
  js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8";   
  }

  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

我设置了一个语言变量,然后让脚本对当时设置的语言做出反应。您可以轻松地将相同的逻辑应用于您的情况。我将变量从php中拉出来,因此语言在页面重新加载时重置,但你可以用js变量轻松完成。使用正则表达式可能有更复杂的方法,但这很有效。我只有两种语言,因此逻辑并不复杂,因此正则表达式可能是一种更好的解决方案,可以根据活动语言动态更改网址的语言部分。