当我尝试向我的网站添加一个带有 url+hash ( example.com/#TEST ) 的 FB Like 按钮并且我尝试单击 Like 按钮时 - 它在新闻提要 (example.com) 中共享没有哈希的链接。
当我尝试用“%23”代替“#”(example.com/%23TEST)设置按钮时 - 它在计数框中分别计算每个哈希。
有什么办法可以用散列放置一个like按钮 - 并且仍然计算没有散列的url?
谢谢!
当我尝试向我的网站添加一个带有 url+hash ( example.com/#TEST ) 的 FB Like 按钮并且我尝试单击 Like 按钮时 - 它在新闻提要 (example.com) 中共享没有哈希的链接。
当我尝试用“%23”代替“#”(example.com/%23TEST)设置按钮时 - 它在计数框中分别计算每个哈希。
有什么办法可以用散列放置一个like按钮 - 并且仍然计算没有散列的url?
谢谢!
当您创建类似 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
。
这些哈希标签用于客户端操作而不是服务器端。您将无法在您的赞按钮中使用它们。