用户在查看前必须喜欢页面

时间:2011-10-22 07:50:59

标签: php javascript facebook-like

我已经在这方面挣扎了很长一段时间,但我想我会重新审视这个问题。我的目标是做同样类型的事情这个facebook页面正在进行https://www.facebook.com/JimBeam?sk=app_140011936063255

他们已经做到这一点,以便用户在查看内容之前必须单击“赞”按钮。

我的正常程序是构建welcome.HTML页面,在fb上创建一个新应用程序,然后将页面分配给正确的业务。

我的问题是,如果我设计了一个新的html页面,让我们称之为pre-like.HTML,我会在哪里放入代码,以便在用户能够看到欢迎页面之前显示此页面设计?

我想一旦点击了like按钮,它会将用户重定向到欢迎页面?我非常感谢你可以发送任何建议或好的教程。

提前谢谢!!

3 个答案:

答案 0 :(得分:2)

我为您找到了这些信息。 FACEBOOK SECRET HIDE CONTENT ON FAN PAGE UNTIL SOMEONE LIKES IT

  

您需要在PHP文件的一部分中添加此内容,以便为非粉丝和粉丝显示不同的消息。

 <?php

 $request = $_REQUEST["signed_request"];</p>
 <p>list($encoded_sig, $load) = explode('.', $request, 2);</p>
 <p>$fbData = json_decode(base64_decode(strtr($load, '-_', '+/')), true);</p>
 <p>if (!empty($fbData["page"]["liked"]))</p>
 <p>{ ?></p>
 <p>You are a fan - insert html here</p>
 <p><?php } else { ?></p>
 <p>You are not a fan - insert html here</p>
 <p>

 <?php } ?>

希望有所帮助!我强烈建议你点击我从中获取信息的链接,然后按照他的指示操作。这篇文章的日期是十月,所以我认为这可能是网上最新的信息。

答案 1 :(得分:1)

当用户打开您的应用时,Facebook会向您的应用的画布网址发送一个帖子请求(通过隐藏的表单)。它包含signed_request参数,您可以使用您的应用密钥进行验证,然后进行解码。它包含有关用户的一些信息,甚至在他/她添加您的应用之前,它还有他/她是否喜欢该应用所在的页面。

有关更多详细信息,请参阅documentation of the signed request parameter以及验证/解码它的php示例。

它有点隐藏,但您需要测试$decoded_data->page->liked,这可能足以包含在您的目标网页中。

答案 2 :(得分:0)

当您收到欢迎页面的请求时,我会检查服务器。这样你知道你得到了正确的信息。如果他们不喜欢该页面,请将其发送回目标网页,否则请允许他们查看欢迎页面。