Что делать если среди лайкнувших пост хочется выбрать определенную категорию людей, а поиска по лайкнувшим, втентакль не предоставляет..
порылся в первый раз за последние несколько лет в vk.api и нашел решение этой проблемы. методы api используемые для этой цели:
получение идентификатора группы по её дисплейнейму
https://vk.com/dev/groups.getById
получение списка постов по идентификатору группы
https://vk.com/dev/wall.get
получение списка идентификаторов пользователей лайкнувших пост
https://vk.com/dev/likes.getList
получение выборочной информации о пользователях
https://vk.com/dev/users.get
с ресурсами определились. теперь лезим в консоль разработчика VK и создаем две функции. первая для получения идентификаторов постов
var a = API.groups.getById({"group_id":Args.groupName}); var group_id= a@.id[0]; var count= Args.postcount; var offset = Args.offset; var posts = API.wall.get({"owner_id":-group_id, "count":count, "offset":offset}); var i = count; var OUT=[]; OUT.push({"groupID": group_id}); while (i>=0) { OUT.push({"id":posts.items[i].id, "text": posts.items[i].text}); i=i-1; }; return OUT; //return posts.items[0].id;//@.id, posts.items@.text];и воторая для фильтрации их по заданым критериям. в случае ниже по полу и городу
var group_id= Args.group_id; var post_id = Args.post_id; var offset = Args.offset; var count = Args.count; var sex = Args.sex; var sity = Args.city; var likes = API.likes.getList({"type":"post", "owner_id":group_id, "item_id":post_id, "extended":0, "offset":offset, "count":count }).items; var users =API.users.get({"user_ids":likes,"fields":"city, sex"}); var OUT=[]; var i=0; while(i < count) { if(users[i].sex==1 ) { if(users[i].city.title == Args.city) { OUT.push(users[i]); } } i=i+1; } return OUT;
Отлично. Молодец. Теперь можно пейсать и предлагать забухать