0

我有一个有推荐链接的网站。它被设置为http://site.com/refer/abc重定向到http://site.com/destination.

但是,每当我http://site.com/refer/abc作为 Facebook 的 Like 按钮的 data-href 输入时,它只会将链接重写为http://site.com/destination,这会导致我失去推荐跟踪。

有什么方法可以使用 Facebook Like 按钮保留推荐链接?

4

1 回答 1

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 按钮,您需要在每次创建新按钮时卷曲 Facebook 的 URL linter:

curl https://developers.facebook.com/tools/lint/?url={YOUR_URL}&format=json

这将立即更新“赞”按钮元数据。更多信息在这里。

于 2012-09-20T21:36:03.267 回答