Первое и пожалуй самое важное, что нужно сделать, это создать Standalone приложение в ВКонтакте пройдя по этой ссылке: http://vk.com/editapp?act=create. Далее создаём файлик библиотеки, для работы с api контакта vk.php и добавляем туда следующий код:
<?
class Model_Vk {
private $access_token;
private $url = "https://api.vk.com/method/";
/**
* Конструктор
*/
public function __construct($access_token) {
$this->access_token = $access_token;
}
/**
* Делает запрос к Api VK
* @param $method
* @param $params
*/
public function method($method, $params = null) {
$p = "";
if( $params && is_array($params) ) {
foreach($params as $key => $param) {
$p .= ($p == "" ? "" : "&") . $key . "=" . urlencode($param);
}
}
$response = file_get_contents($this->url . $method . "?" . ($p ? $p . "&" : "") . "access_token=" . $this->access_token);
if( $response ) {
return json_decode($response);
}
return false;
}
}
Вот это основной, мини класс для управления Api VKontakte.
Для того, чтобы наше приложение как то могло постить сообщения на стену, нам нужно получить токен (access_token), для этого вобъём ссылку в адресную строку браузера:
http://oauth.vk.com/authorize?client_id=YOUR_CLIENT_ID&scope=wall,offline&redirect_uri=http://oauth.vk.com/blank.html&response_type=token
Соответственно YOUR_CLIENT_ID вы должны заменить на ID своего приложения. В итоге мы получаем некую ссылку с нашим токеном. Теперь создадим файлик vk_post.php и попробуем чтонибудь написать на нашей стене:
<?
include "vk.php";
$access_token = "ACCESS_TOKEN";
$user_id = "USER_ID";
//Инициализируем класс
$vk = new Model_Vk($access_token);
$params = array(
"owner_id" => $user_id,
"message" => "Hello world!"
);
$post = $vk->method("wall.post", $params);
Запускаем файл через консоль и смотрим на стену пользователя.
$ php vk_post.php
Написал небольшую страничку, где можно быстро и безболезненно попробовать публиковать посты сразу в несколько групп контакта: Автопостинг в группы Контакта. Надеюсь кому-нибудь эта страничка будет полезна.
P.Nixx, 24.10.2012, 11:08