2012-05-28 46 views
4

當我嘗試添加到我的網站FB像按鈕與網址+哈希(example.com/#TEST) ,我嘗試點擊像按鈕 - 它共享鏈接沒有在新聞提要(例如散列.COM)。Facebook的按鈕與哈希

當我嘗試使用「#」(example.com/%23TEST)的「%23」設置按鈕時 - 它在計數框中單獨計算每個哈希值。

有沒有什麼辦法把一個像散列一樣的按鈕 - 仍然計算沒有散列的URL?

謝謝!

回答

7

當您創建Facebook的按鈕時,Facebook會使用cURL(糾正我的人)來訪問含有元數據的網址。所以如果cURL根據URL看到不同的元數據,您將得到不同的LIKE按鈕。

但是這沒有發生;就像在服務器端一樣,Facebook對於每個動態#啓用的鏈接都會看到相同的URL。由於#之前的鏈接部分是相同的。 JavaScript(或任何可以在URL中創建哈希的行爲)被忽略,顯然,因爲其行爲是客戶端唯一的東西。

最好的方法是使用JavaScript動態創建按鈕,並將每個按鈕的網址類似地改爲友好的,而不用散列。

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

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

僅限curl腳本將其視爲不同的URL。

而且當用戶點擊該鏈接 - abc.com/def/part1 - 你會需要服務器端幫助以及從路線def重定向到視圖part1。因此,在路由器代碼中,您只需加載路由def(想象MVC),然後請控制器加載視圖part1,並啓用JavaScript以附加URL散列#part1

1

這些哈希標籤是用於客戶端操作而不是服務器端。您將無法在Like按鈕中使用它們。

+0

是的,因爲這個原因檢查我的答案的第二段以「但」開頭。此外,答案本身是關於創建鏈接W/O哈希標籤被喜歡,然後重定向他們 –