EDIT: LAST UPDATE
:
所以,我们已经测试了一些。我使用了facebook开发者的lintner'http://developers.facebook.com/tools/lint/
。在我的任何一个页面上都没有发现任何错误。在lint-page上的like按钮工作正常。如果我切换回自己的网站,我可以清楚地看到我的喜欢已被计算在内。
奇怪的是..如果我在自己的页面上删除了类似的东西,并且神奇地能够从我自己的网站添加类似内容。
我刚刚改变的最后一件事就是将我的doctype改为STRICT // EN,因为这是我发现与使用类似按钮和我的某些页面不同的唯一部分......
我一直在搜索这个bug一段时间了,但我似乎无法找到问题所在。我用过很多页面来获取我需要的信息:
(除了这些关于类似问题的stackoverflow上的这些帖子之外)
但毕竟阅读后我仍然不确定会出错。在大多数页面上,like按钮工作正常(对我而言,至少,不确定如果有人添加了类似的内容,因为我还没有发现'2')。
这些是具有类似按钮的当前页面:
在我的情况下,当我按下按钮时,最后一个按钮(nr 6 + 7)增加了一个,但是在我这样做之后它也会自动删除。一秒钟后会弹出一个注释框,但是在一瞬间它会逐渐消失,然后计数器会跳回到0.当我从链接1-5中删除其中一个时,会将其删除,我可以添加它没有被删除。
对于我所读到的内容,我必须使用Facebook Javascript SDK才能使用我已经完成的<fb:like>
标记。起初我使用了一个应用程序ID,但经过一些阅读后很明显,类似按钮不需要app-id。
然后我发现了所需的元数据标签。这些是我在页面上放置的内容:
<?php if($curPicTitle != false) { ?>
<meta property="og:site_name" content="<?=URL;?>"/>
<meta property="og:type" content="article" />
<meta property="og:title" content="Fotoactie.nl: <?=$curPicTitle;?>"/>
<meta property="og:url" content="<?=URL;?>pic.php?id=<?=$pic;?>" />
<meta property="og:image" content="<?=URL;?>/photos/1/med_<?=$curPicUrl;?>"/>
<?php } ?>
请注意PHP,只有在存在有效图像时才会包含它,并且标题,网址和图片对于每个页面标题图像组合都是唯一唯一的。
然后使用PHP生成like按钮:
echo '<fb:like send="false" href="'. URL . '/pic.php?id=' . $pic . '" layout="button_count" width="100%" show_faces="false"></fb:like>';
我尝试从这个部分删除href,但我相信这会搞乱并使用相同的URL制作每个图像(?!)
在页面底部,就在</body>
标记之前,此代码放置在:
<script src="http://connect.facebook.net/nl_NL/all.js"></script>
<script>
FB.init({
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
</script>
如果有人能够在最后一页(以及必要时的其他页面)上测试类似按钮,我将不胜感激。这不是“像我的东西”的帖子,这些照片是演示图片,一切正常后将被删除。
提前致谢。
/ EDIT
所以我添加了管理员&amp;元标记的应用程序ID并等了几个小时,然后我收到了错误消息:
De pagina op http://ontwikkel.fotoactie.nlpic.php/?id=66是niet bereikbaar。
翻译的内容:无法访问http://ontwikkel.fotoactie.nlpic.php/?id=66上的页面。
显然这是因为错位''',但奇怪的是,每个页面都在工作,除了一些罕见的情况。这一切都是使用PHP自动构建的,因此在我看来,FB Button在所有情况下都应该表现相同。
按钮页面上的来源(上面链接#6:?id = 66)是正确的..
答案 0 :(得分:2)
您的代码中似乎缺少<div id="fb-root"></div>
。我很惊讶它实际上是有效的。有关详情,请参阅此处:http://developers.facebook.com/docs/reference/javascript/FB.init/
如果这样做无法解决问题,请尝试按照此stackoverflow线程中的说明添加管理员ID或应用ID。 Facebook like button is automatically undoing itself
编辑:我要尝试的另一件事是将<div id="fb-root"></div>
直接移到facebook标记上方。我注意到你的脚本标签正上方,身体标签附近。尽管在页面内容之后加载Facebook脚本是好的(并且更可取),但我的理解是facebook标记必须保持完整。
您的标记应如下所示:
<div id="fb-root"></div><fb:like href="http://ontwikkel.fotoactie.nl/pic.php?id=66" send="false" width="450" show_faces="false" font=""></fb:like>
将脚本标记放在任何地方......
答案 1 :(得分:0)
似乎Facebook需要大量时间来处理元标记中的更改。例如,管理标签花了几个小时才向我显示错误链接(如果出现错误,将布局设置为“标准”会显示管理员消息)。
奇怪的是错误我猜是错误的URL,但是meta + fb:就像URL一样好。我想这是一个小错误,很快就会修复。太糟糕没有人知道这个问题了。