Wednesday, July 4, 2012

Ever wanted to put a Facebook page’s feed into your website? Every Facebook page has an RSS & JSON feed. In this tutorial I will show you how to use PHP and JSON to pull the feed from Facebook without authentication.
  1. You will need your page ID. You can get this from https://graph.facebook.com/yourpage for example https://graph.facebook.com/HoosierHeights If your page does not have a username, you can visit your page and copy the last numbers in the URL for example:https://www.facebook.com/pages/HoosierHeights/163276271689 
  2. Now that you have your page ID you can view the JSON feed at this URL:
    http://www.facebook.com/feeds/page.php?id=163276271689&format=json
    (replacing the number with your page ID).
  3. Here is the PHP code to pull the JSON feed into your site. (Be sure to replace the URL with your own).
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    <?
    //replace the Page ID with your own
    // disguises the curl using fake headers and a fake user agent.
    function disguise_curl($url)
    {
      $curl = curl_init();
      // Setup headers - the same headers from Firefox version 2.0.0.6
      // below was split up because the line was too long.
      $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
      $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
      $header[] = "Cache-Control: max-age=0";
      $header[] = "Connection: keep-alive";
      $header[] = "Keep-Alive: 300";
      $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
      $header[] = "Accept-Language: en-us,en;q=0.5";
      $header[] = "Pragma: "; // browsers keep this blank.
      curl_setopt($curl, CURLOPT_URL, $url);
      curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla');
      curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
      curl_setopt($curl, CURLOPT_REFERER, '');
      curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
      curl_setopt($curl, CURLOPT_AUTOREFERER, true);
      curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
      curl_setopt($curl, CURLOPT_TIMEOUT, 10);
      $html = curl_exec($curl); // execute the curl command
      curl_close($curl); // close the connection
      return $html; // and finally, return $html
    }
    // uses the function and displays the text off the website
    $text = disguise_curl($url);
    $json_feed_object = json_decode($text);
    foreach ( $json_feed_object->entries as $entry )
    {
            echo "<h2>{$entry->title}</h2>";
        $published = date("g:i A F j, Y", strtotime($entry->published));
        echo "<small>{$published}</small>";
        echo "<p>{$entry->content}</p>";
        echo "<hr />";
    }
    ?>

0 comments:

Post a Comment

 

Complete Online Solution | Make the internet world into your hands Copyright © 2009 Community is Designed by CO5 | Web designing | Web hosting