Pull feeds from multiple pages
-
Thanks for the plugin, it’s 1000 times better than dated and bogus “Custom Facebook feed” plugin.
Anyway, here’s how to make it pull feeds from multiple pages and organize posts by date.
$shortcode_atts = shortcode_atts( array( 'id' => $options['facebook_page_id'], 'limit' => $options['facebook_post_limit'], ), $atts ); $shortcode_atts['id'] = array_map('trim', array_filter(explode(',', $shortcode_atts['id']))); foreach( $shortcode_atts['id'] as $id ) { $feed = self::eff_get_page_feed($id, $shortcode_atts['limit']); $page = self::eff_get_page($id); if(isset($feed->error)) { return self::eff_makeError($feed->error->message); } if(isset($page->error)) { return self::eff_makeError($page->error->message); } foreach ($feed->data as $key => $data) { $postTemplate = self::eff_makePost($data, $page); switch ($data->type) { case 'photo': $photoTemplate = self::eff_makePhoto($data); $items[$data->created_time] = Template::merge($postTemplate, $photoTemplate); break; case 'link': $linkTemplate = self::eff_makeLink($data); $items[$data->created_time] = Template::merge($postTemplate, $linkTemplate); break; case 'video': $videoTemplate = self::eff_makeVideo($data); $items[$data->created_time] = Template::merge($postTemplate, $videoTemplate); break; case 'event': $eventTemplate = self::eff_makeEvent($data); $items[$data->created_time] = Template::merge($postTemplate, $eventTemplate); break; case 'status': $postTemplate = str_replace("{{data-content}}", '', $postTemplate); $items[$data->created_time] = $postTemplate; break; } } } add_filter( 'jetpack_photon_skip_image', array( 'Eff', 'eff_photon_exception'), 10, 3 ); krsort($items); $items = array_slice($items, 0, $shortcode_atts['limit']); return implode('', $items);
Viewing 4 replies - 1 through 4 (of 4 total)
Viewing 4 replies - 1 through 4 (of 4 total)
- The topic ‘Pull feeds from multiple pages’ is closed to new replies.