Почему Facebook возвращает неправильную страницу (влияет на URL Facebook Like и Share)?

Когда мы впервые размещаем сообщение в блоге, Facebook часто (но не всегда) не понимает, что это за страница. В частности, если вы попытаетесь использовать кнопку «Мне нравится» на странице блога ИЛИ если вы попытаетесь поделиться с помощью ссылки «Поделиться» в своем профиле, Facebook увидит корневую страницу блога, а не реальную страницу публикации.

Например, недавно мы опубликовали: http://thisorthat.com/blog/2010-song-of-the-year-round-1-results

Если пользователю это "нравится", он возвращает заголовок для: "http://thisorthat.com/blog"

Когда вы прогоняете URL поста через FB Linter, вы можете увидеть проблему. "http://developers.facebook.com/tools/linter?url=http://thisorthat.com/blog/2010-song-of-the-year-round-1-results"

В разделе «Отладка» отображаются дополнительные og:title, og:url, описание и og:image (последние 4 строки раздела «Отладка»). Это метаданные из корневого каталога. Чего мы не можем понять, так это почему. Почему Facebook видит правильные метаданные на странице, а затем также извлекает метаданные из корневого каталога (и неправильно использует их для заполнения данных для кнопки «Мне нравится» и инструмента «Поделиться URL»)?

Еще одна странность. FB «разбирается» через несколько дней. Конечно, к тому времени пост просматривает относительно мало людей.

ОБНОВЛЕНИЕ. Я хочу еще раз поблагодарить Питера Бейли за его ответ, но мы также обнаружили, что была еще одна проблема, которую нам нужно было решить, прежде чем кнопка «Нравится» заработала.

Проблема заключалась в том, что мы показывали кнопку Facebook «Мне нравится» на сообщении, которое еще не было опубликовано. Проблема в том, что FB не может разрешить URL-адрес и «угадывает» правильный URL-адрес. В нашем случае он всегда угадывает thisorthat.com/blog. К сожалению, затем он кэширует это предположение в течение нескольких дней, и этот кэш не может быть очищен линтером. Таким образом, окончательное решение состояло в том, чтобы исправить og:type, как предложил Питер, а также удалить кнопку «Мне нравится» из предварительного просмотра сообщения в блоге. Очень важно, чтобы вы не показывали страницу на FB до ее публикации, а если и показывали, то меняли URL-адрес.


person Jon Kelly    schedule 19.01.2011    source источник


Ответы (1)


Почти уверен, что проблема в вашем типе Open Graph.

<meta content="website" property="og:type"/>

Согласно документации.

Используйте article для любого URL-адреса, представляющего временный контент, например новостную статью, сообщение в блоге, фото, видео и т. д. Не используйте website для этой цели. website и blog предназначены для представления всего сайта, тег og:type с типами website или blog обычно должен появляться только в корне домена.

person Peter Bailey    schedule 19.01.2011
comment
Мы только что внесли это изменение, и теперь оно работает. Большое спасибо, Питер! Мы боролись с этим в течение нескольких месяцев! - person Jon Kelly; 20.01.2011