带有哈希的 Facebook Like 按钮

标签 facebook facebook-like facebook-likebox

当我尝试向我的网站添加一个带有 url+hash ( example.com/#TEST ) 的 FB Like 按钮时 然后我尝试单击“赞”按钮 - 它在新闻提要 (example.com) 中共享没有哈希的链接。

当我尝试用“%23”代替“#”(example.com/%23TEST)来设置按钮时 - 它会在计数框中分别计算每个哈希值。

有什么办法可以用散列来放置一个喜欢的按钮 - 并且仍然计算没有散列的 url 吗?

谢谢!

最佳答案

当您创建类似 Facebook 的按钮时,Facebook 使用 cURL(纠正我的人)来访问您的具有元数据的 URL。因此,如果 cURL 看到不同的元数据,对于每个 URL,您将获得不同的 LIKE 按钮。

但这并没有发生;与在服务器端一样,Facebook 会为每个启用 # 的动态链接看到相同的 URL。由于 # 之前的链接部分是相同的。显然,JavaScript(或任何可以在 URL 中创建散列的行为)被忽略,因为它的行为是客户端唯一的东西。

最好的方法是使用 JavaScript 动态创建按钮,并将每个按钮的 URL-to-like 更改为友好的无哈希值。

abc.com/def#part1
abc.com/def#part2

// to
abc.com/def/part1
abc.com/def/part2

仅供 curl 脚本将其视为不同的 URL。

当用户点击该链接 - abc.com/def/part1 - 你将需要服务器端帮助以及重定向到 View part1 来自路线 def。所以你会,在你的路由器代码中,只加载到路由 def(想象一下 MVC),然后要求 Controller 加载 View part1,启用 JavaScript 以附加URL 哈希 #part1

关于带有哈希的 Facebook Like 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10791391/

相关文章:

html - facebook Like 按钮导致垂直滚动条而不是覆盖

facebook - 如何获取特定页面的所有 Facebook 签到?

html - 如何使 Facebook 评论的宽度为 100%?

javascript - 获取类似事件的 Facebook 页面名称

asp.net - 如何在单击“赞”按钮时在新选项卡中打开 Facebook 登录窗口

facebook-like - Facebook Like 不会出现,如果 Url 最后有 "/" "%2F"

Android Facebook - 如何获得帖子的点赞数?

java - 无法解析 onActivityResult 方法

javascript - 许多 facebook 喜欢页面上的按钮,异步

javascript - Facebook likebox 深色方案不可读