Facebook like: href url против канонического url

для отслеживания целей, я хочу, чтобы URL-адрес, который появляется в потоке facebook после "похожего действия", немного отличается от URL-адреса, который действительно понравился пользователю.

Пример: Я использую <link rel="canonical" href="#" onclick="location.href='http://example.com/test.html'; return false;"> в своем разделе, чтобы рассказать facebook, к какому URL относится подобное действие на этом веб-сайте.

Далее на веб-сайте у меня есть <fb:like href="#" onclick="location.href='http://example.com/test.html?param=144141'; return false;"> с тем же URL-адресом, только с дополнительным параметром.

Мое намерение: если кто-то нажимает кнопку "как", facebook помещает его в "группу, которая нравится http://example.com/test.html", чтобы появиться затем аналогичная кнопка. Но когда другой пользователь видит свое подобное действие в потоке facebook и нажимает на него, он должен быть перенаправлен на http://example.com/test.html?param=144141.

Проблема заключается в том, что это не работает, потому что каноническое объявление в разделе заголовка перезаписывает атрибут href моего тега <fb:like>. Кто-нибудь знает, как решить эту проблему или просто не работает?

Ответы

Ответ 1

Вы не можете выполнить то, что вы запросили, но вы можете добавить произвольный параметр отслеживания (особенно полезный для целей аналитики). Facebook недавно добавил параметр ref в элемент fb:like для этой цели. Вам решать, как вы хотите заполнять различные биты информации в этот единственный параметр, а затем анализировать fb_ref всякий раз, когда он включается в входящие URL-адреса.

Пример

Поместите следующий элемент на страницу HTML:

<fb:like href="#" onclick="location.href='http://example.com/test.html'; return false;" ref="144141"></fb:like>

Пользователи, щелкнув ссылку из Facebook, должны быть перенаправлены на:

http://example.com/test.html?fb_ref=144141&fb_source=home_multiline

Documentation