Facebook赞(在模态窗口中)更改location_href

时间:2012-01-08 09:54:39

标签: html location-href

我们使用PrettyPhoto和最新版本3.1.3允许用户在模态窗口中使用Like和Tweet ..

这很好,但它确实有效(fb)。我还没有找到任何有这个工作的人,甚至是PrettyPhoto网站本身。

无论如何,我真的很想用这个。我认为的问题是如何解析网址。

iframe like按钮的Prettyphoto js代码是..

<iframe src="http://www.facebook.com/plugins/like.php?locale=en_US&href={location_href}&amp;layout=button_count&amp;show_faces=true&amp;width=500&amp;action=like&amp;font&amp;colorscheme=light&amp;height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe>

密钥似乎是{location_href}

这是正确的格式吗?在您提出问题之前,是的,他们对PrettyPhoto的支持提出了异议,但是很多人都在问完全相同的问题而没有答案。

我认为他们使用的js是错误的。

要添加:尝试过parent_location_href但是没有正确解析,还有parent.location_href和所有不同的内涵..

看起来我可能要把绝对链接放在...或者我应该把网站网址跟随location_href

http://mydomain.com/ {location_href}

1 个答案:

答案 0 :(得分:1)

Facebook不支持iframe按钮的iframe版本。请参阅此处http://developers.facebook.com/docs/reference/plugins/like/

我会使用xfbml版本并按照Tue文档来添加命名空间并异步加载fb js SDK。

编辑:这是一个快速指南

将此代码直接放在开始正文标记

之后
 <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_GB/all.js#xfbml=1&appId=265199713527696";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

更改HTML标记以使其具有此命名空间

<html xmlns:fb="http://ogp.me/ns/fb#">

然后将xfbml like按钮放入模态中,根据需要替换值

<fb:like href="http://yoururl.com" send="true" width="450" show_faces="true" font="arial"></fb:like>

您可能希望使用fb lint来帮助检查Facebook获取的详细信息并刷新网址的任何数据。这可以在http://developers.facebook.com/tools/debug

找到