我有一個網站具有推介鏈接。它的設置使http://site.com/refer/abc
重定向到http://site.com/destination
。將推介鏈接放入Facebook Like按鈕
每當我輸入http://site.com/refer/abc
作爲Facebook Like按鈕的data-href時,它只是將鏈接重寫爲http://site.com/destination
,這會導致我失去引用跟蹤。
任何方式,我可以保持推薦鏈接與Facebook Like按鈕?
我有一個網站具有推介鏈接。它的設置使http://site.com/refer/abc
重定向到http://site.com/destination
。將推介鏈接放入Facebook Like按鈕
每當我輸入http://site.com/refer/abc
作爲Facebook Like按鈕的data-href時,它只是將鏈接重寫爲http://site.com/destination
,這會導致我失去引用跟蹤。
任何方式,我可以保持推薦鏈接與Facebook Like按鈕?
我解決了這個問題,通過檢查它是否是訪問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的網址棉短絨:
curl https://developers.facebook.com/tools/lint/?url={YOUR_URL}&format=json
這將更新Like按鈕元數據立即。 More info here.