Если в документации по API нет возможности делать выборку по нескольким значениям, то я бы использовал в данном случае какое либо кеширование результатов с определенным временем жизни, поскольку задержку в обновлении данных не избежать.
Если задача должна решиться на стороне php то можете посмотреть similar_text, построив индексы по процентному совпадению поисковой фразы со значением массива. Останется отсортировать массив по индексу
Как вариант хранить сериализованый список id -шников пользователей в поле таблицы отвечающей за хранение настроек. Соответственно при перетасовке пользователей результат пишем в эту таблицу и при запросе берем.
Представление может быть одно (форма товара), логика для обработки формы разная. При добавлении данные формы отправляете на создание, при изменении соответственно на редактирование.
Каждый раз вы пытаетесь заново пройти авторизацию, достаточно при первом получении токена сохранить его в сессию, а при дальнейших запросах к Api подставлять токен, но также стоит учесть, что токен может истечь и нужно будет выполнить запрос нового
Для получения альбомов в FB необходим доступ user_photos, получен ли он у вас в панели приложения?
Status & Review -> Items in Review -> Add Items to this Submission