Google Website Translator Gadget

среда, 14 марта 2012 г.

Проблемы виджета ВКонтакте - не работает pageImage, pageDescription и т.д.

Данный материал посвящен проблемам интеграции на сайт и использования виджета ВКонтакте "Мне нравится" и виджета "Опубликовать ВКонтакте" ("Сохранить", "Рассказать").

Использование кнопок социальных сетей повышает посещаемость сайта. Вконтакте предлагает два варианта таких кнопок: "Мне нравится" и "Сохранить" (поделиться). Первая кнопка (VK.Widgets.Like) выглядит в форме сердечка с текстовым счетчиком и предназначена в первую очередь для установки лайков. Это кнопка может иметь надпись "Мне нравится" или "Это интересно" и выглядит одним из следующих образов:
 
 

При наведении мыши на кнопку появляется список людей, которым понравился материал и добавляется чекбокс "Рассказать друзьям", позволяющий поделиться материалом на своей странице ВКонтакте:
Виджет "Опубликовать ВКонтакте" (VK.Share.button) ориентирован для сохранения информации о понравившейся странице на стене в контакте. Кнопка может иметь произвольную надпись и выглядит следующим образом:
 
 
 
 
Для корректной работы этих виджетов приходится как правило настраивать полностью все их параметры: иконку страницы, заголовок, ссылку и текст описания. Тогда данные о странице корректно сохраняются на стене пользователя:

Документация для настроек виджетов находится на официальном сайте Вконтакте: ссылка виджета "Мне нравится", ссылка для виджета "Опубликовать ВКонтакте". Для виджета "Опубликовать" используются параметры url, title, image, description, которые задают адрес публикуемой страницы, иконку (маленькое изображение для превью) страницы, краткое описание.
<script type="text/javascript">
<!--
document.write(VK.Share.button({
url: 'http://blog.valitov.me',
title: 'Название страницы',
description: 'Краткое описание сайта',
image: 'http://blog.valitov.me/icon.jpg',
noparse: true
}));
-->
</script>
В этом случае код работает корректно и сохраняемая страница на стене Вконтакте выглядит  с учетом всех использованных параметров:
Код с аналогичными параметрами pageUrl, pageTitle, pageImage, text для виджета "Мне нравится" выглядит так:
<div id="vk_like"></div>
 <script type="text/javascript"> window.onload = function ()
{
VK.init({apiId: 111, onlyWidgets: true});
VK.Widgets.Like('vk_like', {width: 500,
pageUrl: 'http://blog.valitov.me',
pageTitle: 'Название страницы',
pageDescription:  'Краткое описание сайта',
pageImage:  'http://blog.valitov.me/icon.jpg'
}, 321); }
</script>
Страница опубликуется на стене ВКонтакте следующим образом:
Таким образом, устанавливаемые параметры не работают. Поиск по Интернету говорит о том, что иногда эти параметры для виджета всё же работают. Возможно, если код кнопки  располагается не на той странице, на которую ссылается, то контакт блокирует дополнительные параметры кода. На мой взгляд удобнее использовать либо оба виджета, либо только виджет "Опубликовать ВКонтакте".