我有一个问题,如何在facebook上的应用程序中添加“按钮”示例:
<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/pl_PL/all.js#xfbml=1&appId=94784739294";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-like" data-href="http://www.facebook.com/teste?sk=app_09090909" data-send="true" data-width="450" data-show-faces="true"></div>
如果您使用此表单http://www.facebook.com/teste?sk=app_09090909,则会将我带到http://www.facebook.com/teste。为什么?
答案 0 :(得分:1)
facebook给three options,我尝试了第三个,使用了i-frame并且很容易为我工作..
<iframe src="//www.facebook.com/plugins/like.php?href=https%3A%2F%2Fapps.facebook.com%2FYOURAPPNAME%2F&send=false&layout=standard&width=450&show_faces=true&action=like&colorscheme=light&font&height=80&appId=XXX" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>
答案 1 :(得分:0)
在“?”之后,似乎按钮不关心页面的变量。
我发现的黑客攻击是将data-href与您拥有的其他网址一起使用,并将其重定向到您的真实应用网址。
我不太喜欢这个,为什么facebook不允许喜欢页面?
答案 2 :(得分:0)
这实际上与您尝试喜欢的页面是Facebook页面有关(您传递的参数只是表明应该显示页面选项卡应用程序而不是默认视图)。
Linter甚至没有尝试从您的应用程序中获取OpenGraph标记。一旦linter访问该页面,它将发现该页面的og:url
仍然指向Facebook页面,而不是指向在页面选项卡中运行的应用程序,这似乎没问题(您的应用程序不拥有该页面而是Facebook页面一样)...
解决方案是创建中间页面,该页面将保存所需的OpenGraph标记并将客户端重定向到最终页面。该页面的URL应该用于Like Button社交插件,以便在喜欢发布的故事中提供正确的详细信息,但仍然可以驱动用户更正最终页面。