Я заметил, что когда я посещаю сайты для фотопечати, они спрашивают, хотите ли вы импортировать свои фотографии из Facebook. Как они это делают? Предоставляет ли Facebook API для импорта фотографий пользователей?
В основном я использую PHP.
get_albums возвращает массив альбомов, выполняет var_dump, чтобы увидеть, что он возвращает.
$albums = get_albums($facebook); foreach($albums as $album) { if($album["count"] > 0) { //if the album has pictures, then do something with the album } } function get_albums($facebook) { $fb_user = getFbUser($facebook); $myalbums = $facebook->api('/me/albums'); return $myalbums["data"]; } function getFbUser($facebook) { $fb_user = $facebook->getUser(); //gets user id if(is_null($fb_user)) { header("Location:{$facebook->getLoginUrl(array('req_perms' => 'user_status,publish_stream,user_photos'))}"); exit; } return $fb_user; } function getFb() { $facebook = new Facebook(array( 'appId' => 'your_appid', 'secret' => 'your_secret', 'cookie' => true, )); return $facebook; } 
См .: http://www.joeyrivera.com/2010/facebook-graph-api-app-easy-w-php-sdk/
 /** * get_albums() * * @param long $uid * @return array */ function get_albums($uid=null) { if (empty($uid)) $uid = $_REQUEST['fb_sig_user']; try { return $facebook->api_client->photos_getAlbums($uid,null); } catch (FacebookRestClientException $ex) { return array(); } } /** * get_photos() * * @param bool $bool_pids * @param mixed $aids (array of album ids or null) * @return array */ function get_photos($bool_pids=true, $aids=null, $pids=null) { try { $p = $facebook->api_client->photos_get(null, $aids, $pids); } catch (FacebookRestClientException $ex) { } if ($bool_pids) { $pids = array(); if (!empty($p)) foreach($p as $p0) $pids[] = $p0['pid']; return $pids; } else return $p; } 
Конечно, вы можете получать фотографии от пользователей, которые добавили ваше приложение, и согласились поделиться такой информацией. Сначала вы извлекаете альбомы с помощью вызова API photos_getAlbums, затем можете перебирать идентификаторы альбомов и вызывать photos_get для извлечения фотографий для альбомов.
   / **
    * get_albums ()
    *
    * @param long $ uid
    * @return array
    * /
     function get_albums ($ uid = null)
     {
          if (empty ($ uid))
             $ uid = $ _REQUEST ['fb_sig_user'];
         пытаться
         {
             return $ facebook-> api_client-> photos_getAlbums ($ uid, null);
         }
         catch (FacebookRestClientException $ ex) 
         {
             return array ();
         }
     } 
  / **
    * get_photos ()
    *
    * @param bool $ bool_pids
    * @param mixed $ aids (массив идентификаторов альбома или нуль)
    * @return array
    * /
     функция get_photos ($ bool_pids = true, $ aids = null, $ pids = null)
     {
         пытаться
         { 
             $ p = $ facebook-> api_client-> photos_get (null, $ aids, $ pids);
         }
         catch (FacebookRestClientException $ ex) 
         {
         } 
  if ($bool_pids) { $pids = array(); if (!empty($p)) foreach($p as $p0) $pids[] = $p0['pid']; return $pids; } else return $p; } 
Когда я это сделал, они вошли в систему от моего имени (я включил мой пользователь / пароль) и навигационные фотоальбомы по ожидаемому HTML.
Были некоторые юридические вещи, которые я должен был «принять» и были уведомлены о том, что они сделают с моими деталями.
Нажмите эту ссылку ниже и просмотрите мой комментарий. Возможно, это поможет кому-то 🙂
Как импортировать фотографии из Facebook в веб-сайт, используя php?