Помогите, пожалуйста, разобраться с кнопкой публикации ссылок ВК
Во-первых, хочу всех поприветствовать, первый пост на этом форуме.
Во-вторых, хотелось бы решить такую проблему: Со страницы в ВК https://vk.com/dev/Share беру код кнопки публикации ссылок: <!-- Put this script tag to the <head> of your page --> <script type="text/javascript" src="http://vk.com/js/api/share.js?90" charset="windows-1251"></script> <!-- Put this script tag to the place, where the Share button will be --> <script type="text/javascript"> document.write(VK.Share.button({ url: 'http://mysite.com', title: 'Хороший сайт', description: 'Это мой собственный сайт, я его очень долго делал', image: 'http://mysite.com/mypic.jpg', noparse: true })); </script> noparse: true не работает, все берется из метатегов страницы. Саму кнопку я немного переделал под себя, она ссылается на внутреннюю страницу, а установлена на главной: <script type="text/javascript"><!-- document.write(VK.Share.button({url: 'http://mysite.com', title: 'Хороший сайт', description: 'Это мой собственный сайт, я его очень долго делал', image: 'http://mysite.com/mypic.jpg', noparse: true},{type: 'round', text: '<img src=" /mainpage/img/vk_share.png" align="absmiddle" style="padding-top:3px;padding-right:2px;" />'})); --></script> И вот в чем проблема. В документации к кнопке написано про параметр noparse: true - Если значение true, то сервер ВКонтакте не будет делать дополнительный запрос для загрузки недостающей информации с публикуемой страницы. Если параметр noparse не передается или равен false, то в диалоговом окне предварительного просмотра заметки перед публикацией будет использоваться информация с публикуемой страницы. Сервер ВКонтакте загружает содержимое публикуемой страницы и выполняет поиск необходимых параметров: 1. Заголовок. Если на публикуемой странице есть тег <meta name="title" content="...">, то заголовок будет взят из него, иначе будет использован тег <title>. 2. Описание. Если на публикуемой странице есть тег <meta name="description" content="...">, то описание будет взято из него. Моя переделанная кнопка работает, но при noparse: true все равно выдергивает заголовок, описание и картинку из метатегов ссылаемой страницы. Тогда я пошел другим путем, прописав все параметры в url: На сайте кодировка UTF-8 <script type="text/javascript"> document.write(VK.Share.button({url: 'http://мойсайт.ру/страница&title=Заголовок статьи&description=Краткое описание статьи&image=http://мойсайт.ру /img/3/62358420.jpg&noparse=true'},{type: 'round', text: '<img src="/mainpage/img/vk_like.png" align="absmiddle" style="padding-top:3px;padding-right:2px;" />'})); </script> Заголовок, описание и картинка теперь берутся из скрипта, но получил проблему с кодировкой в IE - заголовок и описание открываются краказябрами (в других браузерах такой проблемы нет). Тогда я скрипт в Notepad++ сохранил в UTF-8 и закинул к себе на фтп, сославшись на него: <script type="text/javascript" src="путь к скрипту.js" charset="UTF-8"></script> В IE все стало на русском, в остальных наоборот все сменилось на краказябры. Как бы я не мучал кодировку, все равно не получается сделать кроссбраузерно. Другой косяк заключается в том, что когда все параметры вписываешь в одну строку в url, то все это целеком вписывается в одресную строку всплывающего окна. Сама ссылка в ВК ведет к правильному пути, но счетчик кнопки не считает - всегда показывает одно число, не считает из-за неправильной ссылки во всплывающем окне публикации. Поэтому оптимальным было бы вернуться к родному коду в ВК (самый первый в посте), но вот как заставить работать noparse: true, что бы заголовок, описание и картинка брались не из метатегов, а из скрипта? |
Часовой пояс GMT +3, время: 11:24. |