Кросспосотинг - умышленное автоматическое, полуавтоматическое или ручное помещение одной и той же статьи, ссылки или темы, в форумы, блоги, либо иной формы сайты или публичные переписки, в том числе и в режиме онлайнового общения с целью наращивание ссылочной массы и показателей тИЦ и Google PR, привлечение трафика с бесплатных блог-площадок, увеличение популярности в блогосфере (создание имиджа).

Исходя из выше следующего мы делаем вывод, что кросспостинг активно способствует развитию веб-сайта и является эффективной тенденцией, освоенной, на сегодняшний день, далеко не каждым сайтом. К нашему большому удивлению вопрос кросспостинга одного из популярных соц. ресурсов рунета практически не освещен - нам не удалось найти ни одной полноценной, свежей, рабочей статьи по данному вопросу. В связи с этим мы берем на себя ответственность просветить нашего читателя и предложить на публичное обозрение метод организации кросспостинга с соц. сетью "Вкотакте".

Метод который мы рассмотрим ниже позволяет размещать информацию на страницах любого пользователя или группы к которому имеет доступ авторизованному пользователю.

Ресурс "Вконтакте" имеет некоторые ограничения в вызове методов API для различных типов приложений. Полную и актуальную информацию по данному вопросы вы сможете найти в разделе документация.

Кросспостинг Вконтакте средствами API

На практике все оказалось довольно просто. Если не обращать внимание на косяки документации, которые мы будем отмечать особым "образом" в серии статей кросспостинга.

Прежде всего необходимо создать Standalone-приложение. Сделать это можно следуя следующим пунктам:

  1. Перейдем в раздел разработчикам и нажмем кнопку "Создать приложение".
  2. Выбираем тип приложения "Standalone-приложение" и вводим любое имя приложения. Например: Auto msg.
  3. После нажатия по кнопке «Подключить приложение» у вас затребуют код, который придет вам в виде СМС в течении минуты на мобильный номер телефона указанный в профиле пользователя под которым вы авторизованы.
  4. Отлично! У Вас уже есть standalone-приложение.

PS в дальнейшем информацию вашего приложения вы можете редактировать на странице Приложения.

PSS Кстати, вы не сможете удалить созданные вами приложения. После осознания этой информации у нас задергался левый глаз и зачесалась правая пятка! Мы не привыкли работать с сервисами, где нет возможности вернуться на исходную!

Далее нам потребуется провести первоначальную конфигурацию созданного приложения, без которой мы не сможем получить доступ к API вконтакте с вашего сайта. Итак опять по шагам:

  1. Переход на страницу Приложения и жмем кнопку "Настройки". Далее ищем ваше созданное приложение в разделе "Администрируемые приложения" и жмем кнопку "Редактировать".
  2. При желание вы можете пройтись по всем вкладкам и заполнить все необходимые для вас поля.
  3. Переходим на вкладку "Настройки" и заполняем обязательные поля: адрес сайта, Базовый домен (домены которым разрешен доступ к API). Значение "ID приложения" вам необходимо запомнить, оно нам пригодится в дальнейшем.
  4. Не забудьте сохранить изменения.

Далее что нам необходимо - это получить доступ вашего сайта к методам API. Для этой процедуры ВК использует Авторизация на базе OAuth 2.0. Принцип авторизации очень простой:

  1. Формируем ссылку http://api.vkontakte.ru/oauth/authorize?client_id=&scope=&redirect_uri=http://api.vk.com/blank.html&response_type= где:
    client_id - Ваш id приложения;
    scope
     - запрашиваемые права доступа приложения, которые можно перечислять через запятую. В данном случае приложение запрашивает доступ к API со стороннего сервера в любое время (offline) и wall – доступ к методам работы со стеной;
    redirect_uri - ссылка для возврата ответа сервера. В нашем случае обязательный параметр равный http://api.vk.com/blank.html, т.к. только данный способ авторизации имеет возможность получить доступ к методам работы со стеной.
    response_type - собственно тот параметр который мы хотим получить - access_token.
  2. Переходим по получившейся ссылке( в этот момент вы должны быть авторизованы) и разрешаем доступ приложению.
  3. Далее Вас перебрасывает на ссылку http://api.vk.com/blank.html с рядом параметров. Нужный нам параметр access_token. Копируем его значение куда-нибудь. Оно нам необходимо для доступа к API.

И так поздравляем Вас - вы получили свой ключ доступа для вызова методов API. При помощи данного ключа вы сможете обращаться к методам API со своего сайта от имени авторизованного пользователя. Дело осталось за малым - научиться постить на доску Вконтакте средами API. В этой затее нем ничего сложного как и в прошлых шагав получения доступа к API:

  1.  Формируем GET запрос https://api.vk.com/method/wall.post?owner_id=&friends_only=&from_group=&message=&attachments=&access_token= где:
    owner_id - идентификатор пользователя или сообщества, на стене которого должна быть опубликована запись. Обратите внимание, что идентификатор группы обозначается со знаком "-".
    friends_only - 1 — запись будет доступна только друзьям, 0 — всем пользователям. По умолчанию публикуемые записи доступны всем пользователям.
    from_group - Данный параметр учитывается, если owner_id < 0 (запись публикуется на стене группы). 1 — запись будет опубликована от имени группы, 0 — запись будет опубликована от имени пользователя (по умолчанию).
    message - текст сообщения (является обязательным, если не задан параметр attachments)
    attachments - список объектов, приложенных к записи и разделённых символом ",". Поле attachments представляется в формате: 
    <owner_id>_<media_id>,<owner_id>_<media_id>

    — тип медиа-приложения:
    • photo — фотография;
    • video — видеозапись ;
    • audio — аудиозапись;
    • doc — документ;
    • page — wiki-страница;
    • note — заметка;
    • poll — опрос.
    • album — альбом.

    <owner_id> — идентификатор владельца медиа-приложения
    <media_id> — идентификатор медиа-приложения.

    Например:
    photo100172_166443618,photo66748_265827614

    Также в поле attachments может быть указана ссылка на внешнюю страницу, которую Вы хотите разместить в записи, например:
    photo66748_265827614,http://habrahabr.ru

    При попытке приложить больше одной ссылки будет возвращена ошибка.

    Параметр является обязательным, если не задан параметр message.


    access_token - ключ доступа к методу API, который мы с вами ранее сохранили.
  2. В ответ на данный запрос сервер возвращает строку JSON, где в случае успешного вызова метода API wall ваше сообщение опубликуется и вам вернется id сообщения в строке JSON, в противном случае вернется код ошибки и текстовое описание.

Заключение

В заключение мы хотели бы отметить, что организация кросспостинговой системы с соц. сетью "Вконтакте" задача не сложная, и ,не смотря на немногочисленные ошибки в документации для разработчика, методология работы с API вполне доступно и достойно описана. Теперь Вы владеете знанием о принципе организации кросспостинговой системы с соц. сетью "Вконтакте". Обладая знаниями данного принципа у вас не возникнет затруднений в реализации кроспостинга на любом языке программирования. Хотим еще раз отметить инновационность и значимость данного метода раскрутки ресурсов, который позволяет охватить большую предполагаемую аудиторию и, как следствие, повысить посещаемость, тиц, Google PR, привлечение трафика с бесплатных блог-площадок, увеличение популярности в блогосфере (создание имиджа).

Лучший способ сказать автору «СПАСИБО»рассказать друзьям или поделиться ссылкой!
Другие статьи:
Всплывающая фиксированная навигация для сайта jQuery, CSS - инструкция, примеры

18/02/2020

В этой статье Мы покажем Вам, как сделать так, чтобы шапка сайта выезжала при прокрутке страницы вверх, но при этом скрывалась при прокрутке страницы вниз, чтобы не загораживать нам просмотр самой страницы.

Всплывающая фиксированная навигация для сайта jQuery, CSS - инструкция, примеры
Плагин DateTimePicker для сайта - инструкция, настройка, инициализация

05/02/2019

DateTimePicker – удобный и легкий в использовании плагин для быстрой подстановки даты и времени в поля ввода.

Плагин DateTimePicker для сайта - инструкция, настройка, инициализация
Плагин маски ввода для input - jquery maskedinput - инструкция, настройка, инициализация

23/01/2019

В этой статье будет рассмотрено решение этой задачи с использованием плагина Masked Input, который отличается простотой и удобством в использовании.

Плагин маски ввода для input - jquery maskedinput - инструкция, настройка, инициализация
Чтение excel на PHP - основные методы класса PHPExcel

03/11/2016

С помощью PHPExcel можно производить чтение и запись информации в файлы, форматировать их содержимое,выполнять операции с формулами, стилями и т.д.

Чтение excel на PHP - основные методы класса PHPExcel
TinyMCE вырезает теги - исключения для тегов TinyMCE

21/09/2016

Текстовый редактор TinyMCE в визуальном режиме при стандартной конфигурации обрезает некоторый теги и свойства.

TinyMCE вырезает теги - исключения для тегов TinyMCE
Cвойства и методы TinyMCE - вставка тегов, вывод значений

21/09/2016

Научимся вставлять теги в выделенный фрагмент текста, вставлять теги на место селектора в тексте и получать средствами JS HTML код отредактированного текста и текст без HTML сущностей.

Cвойства и методы TinyMCE - вставка тегов, вывод значений
Установка и настройка TinyMCE - инициализация и параметры

21/09/2016

Как вы уже поняли, редактор является платформенным Javascript редактором HTML кода, т.е. WYSIWYG редактором для сайтов и веб приложений. Разработчиком этого полезного продукта является компания Moxiecode Systems AB.

Установка и настройка TinyMCE - инициализация и параметры
Установка и настройка jCarousel - параметры и методы

20/09/2016

В статье мы: познакомимся с каруселью; научимся интегрировать ее на свой сайт; познакомимся с основными параметрами инициализации;рассмотрим самые популярные свойства и методы классов jCarousel

Установка и настройка jCarousel - параметры и методы
Инструкция SMTP PHPMailer - свойства и методы класса

20/09/2016

Любой backend программист php сталкивается с задачей автоматизации почтовой рассылки на веб сайтах и многие,кто сталкивался с данной задачей впервые, вставали перед ключевым вопросом: "Писать или не писать smtp клиент с нуля?".

Инструкция SMTP PHPMailer - свойства и методы класса