0

我在我的 wordpress 网站上有 Zillashare 插件,以便在我的每个帖子下方都有一个 facebook like 按钮,如下所示:SoCatchy!

但是我无法解决 PHP 插件文件以使 Facebook 喜欢按钮适应浏览器用户语言。它总是显示“喜欢”,但我希望它适应每个浏览器。

这是函数 Facebook 代码:

if($options['show_facebook']) $output .= '<div id="fb-root"></div><script>(function(d, s, id) {
      var js, fjs = d.getElementsByTagName(s)[0];
      if (d.getElementById(id)) return;
      js = d.createElement(s); js.id = id;
      js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, "script", "facebook-jssdk"));</script>';
    if($options['show_google']) $output .= '<script type="text/javascript">
    (function() {
      var po = document.createElement("script"); po.type = "text/javascript"; po.async = true;
      po.src = "https://apis.google.com/js/plusone.js";
      var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(po, s);
    })();
    </script>';

但我不知道我是否必须在我的函数中添加一些东西或退出一些东西。

我提前感谢你,任何帮助表示赞赏。

4

2 回答 2

0

由于“喜欢”按钮不仅是一个按钮,而且还是 Facebook 的一个符号。类似于我会谷歌一些东西。

也许禁用语言支持并始终使用英语可能是一种可能性?

我找到了另一种解决方案..但我没有检查它。如果你愿意,你可以在这里试试。

于 2013-10-18T16:38:30.983 回答
0

但是我无法解决 PHP 插件文件以使 Facebook 喜欢按钮适应浏览器用户语言。它总是显示“喜欢”,但我希望它适应每个浏览器。

这不会自动发生。Facebook 社交插件在使用 JS SDK 嵌入时使用哪种语言,取决于locale用于加载 SDK 本身的语言:

js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
                                 ^^^^^

你在这里用美国英语加载它,所以这也是你得到喜欢按钮的语言。

因此,您必须首先检测要使用的语言——如果您不知道如何做到这一点,请检查有关该主题的其他 SO 问题,例如,通过 PHP 检查浏览器的语言?

然后,您应该检查该语言是否可用作 JS SDK 的语言环境——如果是,请使用它,如果没有,则默认返回美国英语或在这种情况下您喜欢的任何语言。

有关支持的语言环境和 JS SDK 本地化主题的更多信息,您可以在此处找到:https ://developers.facebook.com/docs/javascript/gettingstarted/#localization

于 2013-10-18T19:56:42.047 回答