2017-11-15 4 views
0

Ich versuche, die letzten fünf Beiträge zu bekommen. Ich habe Folgendes erstellt:Facebook PHP SDK 4 - Holen Sie sich die letzten 5 Beiträge

try { 
    // Returns a `Facebook\FacebookResponse` object 
    $response = $this->fb->get(
    '/'.$page_id.'/posts', 
    $access_token 
    ); 

} catch(Facebook\Exceptions\FacebookResponseException $e) { 
    echo 'Graph returned an error: ' . $e->getMessage(); 
    exit; 
} catch(Facebook\Exceptions\FacebookSDKException $e) { 
    echo 'Facebook SDK returned an error: ' . $e->getMessage(); 
    exit; 
} 

$graphNode = $response->getGraphEdge(); 
echo "<pre>"; 
print_r($graphNode); 
echo "</pre>"; 
exit; 

Wie kann ich die Ausgabe begrenzen? Zum Beispiel, anstatt 100 Datensätze zurückgegeben werden, ich will nur 5. Ich weiß, ich muss 'Limit = 5' verwenden, weiß aber nicht, wo oben, um es zu platzieren.

Mit dem obigen Skript bekomme ich auch ein massives Facebook \ GraphNodes \ GraphEdge Objekt mit allen möglichen Informationen. Keine Möglichkeit, ein kleineres verfeinertes Objekt nur für Beiträge zu erhalten (zB Titel, Körper, Bild, Datum)?

+1

Kannst du versuchen, ''/'.$ page_id.'/Posts '' durch ''/'' zu ersetzen.page_id.'/posts?fields=id,title,created_time & limit = 5''? Das ist der Weg, nur die gewünschten Felder zu erhalten und den Limit-Parameter zu verwenden (Sie werden in der Lage sein, den Namen aller Felder zu finden, wenn Sie das Objekt untersuchen) – SamHecquet

+0

Ja, danke !! – user3264461

Antwort

1

Wie ich Ihnen in den Kommentaren gesagt habe, müssen Sie die URL hinzufügen Sie alle diese Parameter wie die Grenze oder die gewünschten Felder aufrufen.

So sollte es wie

$response = $this->fb->get(
    '/'.$page_id.'/posts?fields=id,title,created_time&amp;limit=‌​5', 
    $access_token 
); 

sein, wenn Sie wissen möchten, welche Felder zur Verfügung, können Sie die documentation verwenden können, aber diese Liste möglicherweise nicht genau auf dessen Basis API-Version Ihrer Verwendung. Eine andere Möglichkeit besteht darin, das Objekt vor der Angabe der Felder zu untersuchen.

Verwandte Themen