Фейсбук является сейчас самой популярной социальной сетью и не мудрено что нам, веб-разработчикам, хочется (либо приходится по чьему-то желанию) представить ресурсы там в наиболее выгодном виде. Допустим, мы решили сделать красивую кнопку с помощью нажатия которой открывается Фейсбучная шарилка (или лайкалка), позволяющая опубликовать у себя в ленте ссылку на ресурс, сопровождаемую небольшой картинкой и описанием.
Поставили мы этот линк, желаем проверить каков будет результат. А после нажатия видим, что, к примеру, вместо того thumbnail, который мы хотели бы видеть у нас используется первое попавшийся на странице изображение. Чешем репу, идем сразу читаем документацию, прописываем требуемые og:* meta-теги и пытаемся "расшарить" страничку снова. И что же мы видим? Что ничего абсолютно не изменилось, как будто Facebook не замечает наших изменений. Ответ прост: Facebook кэширует thumbnail и описание страницы для каждого URL.
Чтобы сбросить этот кэш Facebook есть два решения:
Поставили мы этот линк, желаем проверить каков будет результат. А после нажатия видим, что, к примеру, вместо того thumbnail, который мы хотели бы видеть у нас используется первое попавшийся на странице изображение. Чешем репу, идем сразу читаем документацию, прописываем требуемые og:* meta-теги и пытаемся "расшарить" страничку снова. И что же мы видим? Что ничего абсолютно не изменилось, как будто Facebook не замечает наших изменений. Ответ прост: Facebook кэширует thumbnail и описание страницы для каждого URL.
Чтобы сбросить этот кэш Facebook есть два решения:
- Подсунуть для расшаривания немного видоизмененный URL, например, добавив GET-параметр: ?version=2. Этот путь не является идеальным, хотя позволяет добиться результата. Наиболее существенный недостаток проявляется когда на страничке установлены счетчики лайков: в этом случае счетчик будет считаться как для новой страницы - с нуля.
- У Facebook есть отладчик Opeg Graph объектов. Он позволяет проверить какие данные возьмет Facebook для вывода при расшаривании, и распознать возможные ошибки, что собственно Facebook настоятельно рекомендует делать. Помимо этой полезной функции есть один side-effect: при проверке URL он сбрасывает Фейсбучный кэш. Так что в нашей ситуации это самое оптимальное решение возникшей проблемы.
Комментариев нет:
Отправить комментарий