Действительно, часто возникает сильная необходимость сохранить единый стиль социальных счетчиков. Кроме этого, на основе полученных данных можно производить расчеты популярности тех или иных страниц. Помимо банальной аналитики, можно произвести сортировку страниц по социальной популярности, генерировать различные рейтинги.
Вариантов использования этих данных более чем достаточно. А самое главное, у посетителя появляется более глубокая мотивация для осуществления лайка. Ну а, что такое лайк или репост с точки зрения SEO/SMO, я думаю, понятно без лишних слов.
Итак, начнем с простой функции vk_shares($url), которая получает количество репостов страницы ВКонтакте. Где $url — адрес нужной нам страницы.
Работа функций проверена 2 апреля 2015 года. С первой функцией вряд ли возникнут какие-то проблемы. А вот работоспособность второй гарантируется лишь до того момента, как ВКонтакте внесут изменения в код вывода счетчиков. При возникновении проблем, первым делом проверяйте #stats_num и регулярки, которые его обрабатывают.
Как скачать список ID всех пользователей из диалогов сообщества VK
Понравилась публикация?
Обязательно подпишитесь на мой канал и получайте полезные материалы по разработке и фрилансу (бесплатно, без рекламы и инфоцыганщины).
Автор Иван Данилин
Делаю сайты на Вордпресс с 2008 года, в том числе уникальные инструменты для решения сложных бизнес‑задач.
Источник: danilin.biz
Пользователи, кликнувшие по «Мне нравится» (likes.getList)
В этом уроке вы узнаете как работать с методом likes.getList. Узанете как отправить запрос серверу api с помощью официального класса для вызова серверных методом, как обработать полученный ответ.
likes.getList
Получает список идентификаторов пользователей, которые добавили заданный объект в свой список Мне нравится.
Данный метод может быть вызван без использования авторизационных данных (параметры session или access_token).
Параметры
type — тип Like-объекта. Подробнее о типах объектов можно узнать ниже.
owner_id — идентификатор владельца Like-объекта (id пользователя или id приложения). Если параметр type равен sitepage, то в качестве owner_id необходимо передавать id приложения. Если параметр не задан, то считается, что он равен либо идентификатору текущего пользователя, либо идентификатору текущего приложения (если type равен sitepage).
item_id — идентификатор Like-объекта. Если type равен sitepage, то параметр item_id может содержать значение параметра page_id, используемый при инициализации виджета «Мне нравится».
25 ноя 2016 в 8:38
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Небольшая функция, которая работает рекурсивно, каждый раз смещая параметр offset на нужную величину (на offset в запросе + количество уже выбранных юзеров count ) пока не придет пустой ответ. Это значит, что пора обрывать рекурсию.
VK API likes.getList получаем id пользователей которые лайкнули определенный пост
Однако может еще прийти ответ error вместо response . Но эта обработка на вашей совести))
Еще также указывайте версию API, а то может вернуть не те данные, которые ожидаете или вообще ошибку вернуть.
$count = 1000; $offset = 0; $apiVersion = 5.60; $result = []; getLikesData($result, $count, $offset, $apiVersion); function getLikesData( $query = ‘https://api.vk.com/method/likes.getList?type=postitem_id=111friends_only=0count=’.$count.’ $resp = json_decode(file_get_contents($query), true); if (!$resp[‘response’]) return; $items = $resp[‘response’][‘items’]; if (empty($items)) return; foreach ($items as $item) < $output[] = $item; >getLikesData($output, $count, $offset + $count, $apiVersion); > echo »; print_r($result); echo »;
В функции находится цикл для заполнения результирующего массива по порядку. Если вместо этого воспользоваться array_push , то будет отрабатывать быстрее. Однако в результирующем наборе будет массив массивов.
Это я к чему. Выбирайте что нужно: меньшая скорость, но по порядку или большая скорость, но потом при выводе придется организовывать двойной цикл.
Источник: ru.stackoverflow.com