2010-11-16 84 views
5

我以前正确使用了Facebook Like按钮(iframe版本),但由于某种原因,这次它不适合我。我正在分享一个像http://sub.domain.com/default.aspx?foo=bar的网页。当我查看源HTML时,在iframe中共享的URL正确显示http://sub.domain.com/default.aspx?foo=bar。当我检查OG meta URL属性时,它是http://sub.domain.com/default.aspx?foo=bar(迄今为止这么好)。当我点击赞,它共享http://sub.domain.comFacebook Like按钮共享根URL而不是页

是否有其他人有此问题。就像我之前说过的那样。我弄不明白为什么其他人开箱即用,而这不是。

回答

2

你有一个<链接rel =“canonical”/ >标签,指定他们为同一页?

只是一个受过教育的猜测 - 从未见过规范链接会影响Open Graph Protocol之前的共享。

+0

标签也会这样做。我还没有尝试过,但会猜测这里的答案是将“foo”get参数附加到这两个标记(假设它们已设置,并假设它们都当前引用页面sans params)。 – 2011-08-25 02:52:13

0

这些就像主页上的按钮?默认代码喜欢图标所在页面的URL。当在父页面上放置像子页面的按钮时,这可能是个问题。

1

只需添加下面的<Head>标签内两行,你应该能够解决这个问题。

<link href="http://sub.domain.com/default.aspx?foo=bar" rel="canonical"> 
<meta content="http://sub.domain.com/default.aspx?foo=bar" property="og:url"> 

在这里,我只是硬编码的网址,但是当你实现它,请确保每个网页的网址是动态的。您可以使用$ SERVER变量来生成相应页面的URL。

如果您需要任何支持,请随时联系!