0

我有很多这样的页面:

www.mysite/directory/title?title=$title

所以你可以看到每个页面都是动态的。正如在我想让我的 facebook 为动态 url 生成按钮之前多次被问到的那样。我注意到去年年底对“赞”按钮进行了一些更改,因此一直在尝试查找有关此的最新帖子。

我遇到的问题是 Facebook 错误,它声明它需要一个绝对 URL,或者它只是将类似按钮引用到 Facebook 设置的内容,在这种情况下是我的登录页面。

我尝试了以下方法:

    // Load the SDK's source Asynchronously
  // Note that the debug version is being actively developed and might 
  // contain some type checks that are overly strict. 
  // Please report such bugs using the bugs tool.
  (function(d, debug){
     var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement('script'); js.id = id; js.async = true;
     js.src = "//connect.facebook.net/en_US/all" + (debug ? "/debug" : "") + ".js";
     ref.parentNode.insertBefore(js, ref);
   }(document, /*debug*/ false));
</script>

    <script type="text/javascript">
      var sUrl = "http://www.mysite.com/";
      document.getElementById('fb').setAttribute('href', sUrl);
    </script>  
<div class="fb-like" id="fb"  data-send="true" data-layout="button_count" data-width="60" data-show-faces="true"></div>

和:

<?php $url = basename($_SERVER['REQUEST_URI']);?>
<div class="fb-like" data-send="false" data-layout="button_count" data-width="450" data-show-faces="true"></div>

随着:

  <div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#appId=186609524720286&amp;xfbml=1"></script>
<div id="fblikeblock"></div>
<script>
    var url = 'http://apps.facebook.com/inflatableicons/image_preview.html?y=120';
    jQuery("#fblikeblock").html('<fb:like id="fbLike" href="'+url+'" send="true" width="450" show_faces="true" font=""></fb:like>');
    FB.XFBML.parse(document.getElementById('fblikeblock'));
    console.log(document.getElementById('fblikeblock'));
  </script>

不要忘记:

<fb:like></fb:like>

在调用 FB.XFBML.parse 之后。

我没有成功,但正如你所看到的,现在已经用很多方法尝试过了,而且很卡住。有任何想法吗?

谢谢!

编辑:

url 是编码的,所以今天我尝试了以下 - 仍然是相同的结果。我在 Stack 上看到的所有地方都表明这些方法中的任何一种都应该有效,但我无处可去:

<div class="fb-like" id="fb" data-href="<?php urlencode($url);?>" data-send="true" data-width="450" data-show-faces="true"></div>

有任何想法吗?

4

1 回答 1

0

use data-href for the like url. https://developers.facebook.com/docs/reference/plugins/like/

于 2013-02-17T00:51:08.863 回答