Art*_*uro 4 facebook facebook-iframe facebook-page facebook-graph-api
我在这个URL上有这个HTML:https://myapp.herokuapp.com
<html>
<body>
<iframe frameborder=0 border=0 scrolling="no" src="<?php echo $_GET['url']; ?>" width="760px" height="521px"></iframe>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我创建了一个Facebook页面标签,我希望任何人都可以使用不同的URL在Facebook页面上安装它.因此,当您单击FB页面1上的选项卡时,它将显示嵌入的URL1,FB Page 2将显示URL2,依此类推.然后,在安装"页面"选项卡时,该URL是一个参数.
我试过这个:
https://www.facebook.com/dialog/pagetab?app_id=XXXXXXXXXX&next=https://myapp.herokuapp.com?url=HERE_YOUR_URL
Run Code Online (Sandbox Code Playgroud)
它正在安装应用程序,但似乎iframe中的URL参数为null.我究竟做错了什么?
谢谢
我的方法有点不同.
虽然可能无法安装带有URL参数的应用程序,但您可以根据首先加载它们的页面来调整其内容.正如Page Tab Facebook API集成教程所述:
当用户选择您的页面选项卡时,您将收到 带有一个附加参数页面的signed_request参数.此参数包含具有id(当前页面的页面ID)的JSON对象(SOURCE)
因此,您将在多个页面上安装相同的应用程序,并在顶部使用以下代码(在您创建对象后):$facebook
$page_id = "";
$sr = $facebook->getSignedRequest();
if($page = $sr['page']) {
$page_id = $page['id'];
}
Run Code Online (Sandbox Code Playgroud)
您现在应该可以使用$page_id唯一标识符来告诉您用户当前正在查看应用程序的页面,而不是$_GET变量.Switch语句或数据库集成是第一个想到的方法,但你似乎在问如何识别和检索一个独特的参数而不是如何使用它,所以我相信你会自己解决这个问题.:)
注意:这显然不适用于安装在同一页面的多个页面选项卡上的应用程序,但这似乎不是您的关注点.
| 归档时间: |
|
| 查看次数: |
3368 次 |
| 最近记录: |