如何在没有'story'/'story_tags'的情况下获取页面的提要?

时间:2014-04-02 09:03:51

标签: facebook facebook-graph-api news-feed

我正在尝试使用Graph API从页面获取Feed,但该Feed还包含“故事”,例如“Page like a photo”以及状态,并且该故事没有任何消息。

由于该空消息,循环运行3次(如定义的那样),但如果有一个'故事',它只返回2.

要点:是否有任何“类型”或某些内容可以过滤掉这些故事?我希望免费提供用户操作产生的故事,特别是“喜欢帖子”的事情。

这是我的代码:

<?php
ob_start();

require_once('fb-sdk/src/facebook.php');

$config               = array();
$config['appId']      = '111111111';
$config['secret']     = '111111111111111111111111';
$config['fileUpload'] = false; // optional

$facebook = new Facebook($config);

$pageid = "11111111111111";

$pagefeed     = $facebook->api("/" . $pageid . "/posts");
$page_profile = $facebook->api("/" . $pageid . "?fields=name");
$pagename     = $page_profile['name'];

echo "<div class=\"fb-feed\">";

$i = 0;
foreach ($pagefeed['data'] as $post) {


    if ($post['type'] == 'status' || $post['type'] == 'link' || $post['type'] == 'photo') {

        if (!empty($post['message'])) {
            echo "<div class=\"fb-update\">";
            echo "<div class=\"fb-pic-name\"><img src=\"https://graph.facebook.com/" . $pageid . "/picture\">" . "<span>" . $pagename . "</span></div><p>";
            if (strlen($post['message']) > 70) {
                echo preg_replace('/\s+?(\S+)?$/', '', substr($post['message'], 0, 70)) . "&hellip;";
            } else {
                echo $post['message'];
            }
            echo "<a href=\"https://www.facebook.com/" . $post['id'] . "\" target=\"_blank\"> See More</a></p>";
            echo "<span class=\"date\">" . date("F, jS, g:i a", (strtotime($post['created_time']))) . "</span>" . "<a class=\"comment\" href=\"https://www.facebook.com/" . $post['id'] . "\" target=\"_blank\">Comment</a>";
            echo "</div>";
        }


        $i++;


        if ($i == 3) {
            break;
        }
    }

}

echo "</div>";

ob_flush();
?>

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

这就是我在JS中处理这种情况的方法:

var txt =  response.data[i].message;
if(txt==null){
      txt =  response.data[i].story;
}
alert(txt);

在你的情况下,你可以继续&#34;循环如果&#39;消息&#39;是空的。