- Совместимость
- проверялся на совместимость
- Изменения в БД
- не требуются
- Автор
- ?
- Общественное достояние
- нет
- Инструкция по установке
-
1. Создаёте новое Standalone приложение.
2. В настройках группы приложения указываете вашу группу трекера.
3. Получаете access_token. Сделать это можно перейдя по ссылке:
Код:https://oauth.vk.com/authorize?client_id=ID_приложения_которого_вы_создали&scope=notify,friends,photos,offline,wall&redirect_uri=blank.html&display=popup&response_type=token
Код:https://oauth.vk.com/blank.html#access_token=ACCESS_TOKEN&expires_in=0&user_id=user_id
define('TOKEN_VK', 'ПОЛУЧЕННЫЙ_ТОКЕН');
7. В том же config.php, чуть ниже, пропишите id группы, выбранной в настройках приложения.--выполнить запрос
Код: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
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(); } }
Источник: