public function start_aggregation() { $this->log('<<<<<<<<<<<<<<<<<<<<<<<<<< start aggregation..'); // increasing maximum execution time to 3 min for this part, it can take more time // than the default 30 secs for the images to be downloaded and processed by PHP/WP.. // set_time_limit(180); $feed_enabled = false; // fetch from Facebook.. $options = get_option('facebook_page'); if (isset($options[$this->prefix . 'enabled'])) { $feed_enabled = true; $fb = new FacebookFeed(); $result = $fb->getFeed($options); if ($this->feed_error($result)) { return $result['message']; } else { $this->save_feed_items($result, $this->sections[$this->prefix . 'facebook']); } } // fetch from Twitter.. $options = get_option('twitter_page'); if (isset($options[$this->prefix . 'enabled'])) { $feed_enabled = true; $tw = new TwitterFeed(); $result = $tw->getFeed($options); if ($this->feed_error($result)) { return $result['message']; } else { $this->save_feed_items($result, $this->sections[$this->prefix . 'twitter']); } } // fetch from Instagram.. $options = get_option('instagram_page'); if (isset($options[$this->prefix . 'enabled'])) { $feed_enabled = true; $in = new InstagramFeed(); $result = $in->getFeed($options); if ($this->feed_error($result)) { return $result['message']; } else { $this->save_feed_items($result, $this->sections[$this->prefix . 'instagram']); } } // fetch from YouTube.. $options = get_option('youtube_page'); if (isset($options[$this->prefix . 'enabled'])) { $feed_enabled = true; $yt = new YouTubeFeed(); $result = $yt->getFeed($options); if ($this->feed_error($result)) { return $result['message']; } else { $this->save_feed_items($result, $this->sections[$this->prefix . 'youtube']); } } // fetch from Vimeo.. $options = get_option('vimeo_page'); if (isset($options[$this->prefix . 'enabled'])) { $feed_enabled = true; $vim = new VimeoFeed(); $result = $vim->getFeed($options); if ($this->feed_error($result)) { return $result['message']; } else { $this->save_feed_items($result, $this->sections[$this->prefix . 'vimeo']); } } // fetch from RSS Feed.. $options = get_option('rss_page'); if (isset($options[$this->prefix . 'enabled'])) { $feed_enabled = true; $rss = new RssFeed(); $result = $rss->getFeed($options); if ($this->feed_error($result)) { return $result['message']; } else { $this->save_feed_items($result, $this->sections[$this->prefix . 'rss']); } } $this->log('>>>>>>>>>>>>>>>>>>>>>>>>>> aggregation complete..!'); if (!$feed_enabled) { return 'No social feeds are enabled. <a href="edit.php?post_type=' . $this->post_type . '&page=' . $this->settings_slug . '">Enable some feeds.</a>'; } }