- Installation instructions
- 1. Создаёте новое Standalone приложение.
2. В настройках группы приложения указываете вашу группу трекера.
3. Получаете access_token. Сделать это можно перейдя по ссылке:
5. Вы получите ссылку вида:Code:https://oauth.vk.com/authorize?client_id=ID_приложения_которого_вы_создали&scope=notify,friends,photos,offline,wall&redirect_uri=blank.html&display=popup&response_type=token
6. Копируете access_token и вставляете в config.php:Code:https://oauth.vk.com/blank.html#access_token=ACCESS_TOKEN&expires_in=0&user_id=user_id
define('TOKEN_VK', 'ПОЛУЧЕННЫЙ_ТОКЕН');
7. В том же config.php, чуть ниже, пропишите id группы, выбранной в настройках приложения.Это каркас для постройки собственной системы постинга в ВК, используйте как фундамент)--выполнить запрос
--открыть config.php и найти:Code:INSERT INTO `bb_cron` VALUES ('', 1, 'Очистка устаревших изображений VK', 'clean_vk_images.php', 'weekly', '1', '05:00:00', 30, '0000-00-00 00:00:00', '0000-00-00 00:00:00', NULL, 0, '', 0, 0, 0);
--после вставить:PHP:define('IMAGES_DIR', BB_PATH .'/styles/images/' );
--найти:PHP:define('VKIMAGES_DIR', BB_PATH .'/internal_data/vk/' );
--перед вставить:PHP:// Local config
--открыть posting.php и найти:PHP://VK posting define('TOKEN_VK', 'TOKEN'); define('GROUP_ID', 'ID_ГРУППЫ');
--после вставить:PHP:if ($mode == 'newtopic' || $mode == 'reply') { set_tracks(COOKIE_TOPIC, $tracking_topics, $topic_id); }
PHP:if($mode == 'newtopic' && defined('TORRENT_ATTACH_ID') && $bb_cfg['bt_newtopic_auto_reg'] && !$error_msg) { require CLASS_DIR.'vk.php'; require CLASS_DIR.'post.php'; $token = TOKEN_VK; $user_id = null; $group_id = GROUP_ID; $rows = DB()->fetch_row("SELECT post_text FROM ". BB_POSTS_TEXT ." WHERE post_id = $post_id"); preg_match_all('/\[poster\](.*?)\[\/poster\]/i', $rows['post_text'], $posters1, PREG_SET_ORDER); preg_match_all('/\[img=right\](.*?)\[\/img\]/i', $rows['post_text'], $posters2, PREG_SET_ORDER); preg_match_all('/\[img=left\](.*?)\[\/img\]/i', $rows['post_text'], $posters3, PREG_SET_ORDER); preg_match_all('/\[img\](.*?)\[\/img\]/i', $rows['post_text'], $posters4, PREG_SET_ORDER); $urls = ''; if (@$posters1[0][1]) $urls = $posters1[0][1]; elseif (@$posters2[0][1]) $urls = $posters2[0][1]; elseif (@$posters3[0][1]) $urls = $posters3[0][1]; elseif (@$posters4[0][1]) $urls = $posters4[0][1]; else $urls = 'http://адрес_трекера/путь_до_no_poster.png'; $text = 'Новый релиз! '.get_topic_title($topic_id).' Ссылка: '.make_url(TOPIC_URL . $topic_id); $image = $urls; try { $vk = \vkApi\vk::create($token); $post = new \vkApi\post($vk, $user_id, $group_id); $post->post($text, $image); //echo 'Success!'; } catch(Exception $e) { echo 'Error: <b>' . $e->getMessage() . '</b><br />'; echo 'in file "' . $e->getFile() . '" on line ' . $e->getLine(); } }
Источник: Автоматический постинг на стену VK (с фото) :: Очередной PHP блог

