4

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

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

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

谢谢!

4

2 回答 2

7

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

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

最好的方法是使用 JavaScript 动态创建 Button,并将每个按钮的 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您还需要服务器端的帮助part1才能从路由重定向到视图def。因此,您将在您的路由器代码中仅加载到路由def(想象 MVC),然后要求控制器加载视图part1,启用 JavaScript 以附加 URL hash #part1

于 2012-06-04T17:23:42.063 回答
1

这些哈希标签用于客户端操作而不是服务器端。您将无法在您的赞按钮中使用它们。

于 2012-05-29T05:00:57.360 回答