【问题标题】:Putting referral URLs into Facebook Like button将推荐 URL 放入 Facebook Like 按钮
【发布时间】:2012-11-01 03:43:50
【问题描述】:
我有一个包含推荐链接的网站。它被设置为http://site.com/refer/abc 重定向到http://site.com/destination。
每当我输入 http://site.com/refer/abc 作为 Facebook 的 Like 按钮的 data-href 时,它只会将链接重写为 http://site.com/destination,这会导致我失去推荐跟踪。
我可以通过 Facebook Like 按钮保留推荐链接吗?
【问题讨论】:
标签:
facebook
facebook-opengraph
【解决方案1】:
我通过检查访问http://site.com/refer/abc 的人是机器人还是人类来解决这个问题。如果您使用的是 Rails:
request.env["HTTP_USER_AGENT"].match(/\(.*https?:\/\/.*\)/) ? "is robot" : "is human"
如果是人类,我让它像往常一样重定向。如果它是一个机器人,我只是在没有重定向的情况下呈现页面 - 与人类在 http://site.com/destination 看到的相同。这使得 Facebook 保留了原始引荐来源网址,但在有人点赞该页面时仍显示该页面的相关元标记。
编辑:我发现如果您希望 Facebook 在创建时立即抓取您的 Like 按钮,则每次创建新按钮时都需要 curl Facebook 的 URL linter:
curl https://developers.facebook.com/tools/lint/?url={YOUR_URL}&format=json
这将立即更新“赞”按钮元数据。 More info here.