Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- Class RssReader {
- public $feedUrl; // Feed URL
- public $cache = true; // enable cache
- public $cacheTime = 86400; // 1 day
- public function __construct($feedUrl) {
- $this->feedUrl = $feedUrl;
- }
- protected function _getFeedSource() {
- if($this->cache) {
- if(!file_exists('feed.xml')) {
- $this->_downloadFeed();
- } else if(file_exists('feed.xml') && filemtime('feed.xml') <= time() - $this->cacheTime) {
- $this->_downloadFeed();
- }
- } else {
- $this->_downloadFeed();
- }
- return 'feed.xml';
- }
- protected function _downloadFeed() {
- $xml = file_get_contents($this->feedUrl);
- file_put_contents('feed.xml', $xml);
- }
- public function getRssItems() {
- $source = $this->_getFeedSource();
- $content = file_get_contents($source);
- $feed = new SimpleXmlElement($content);
- return $feed->channel->item ;
- }
- }
- $reader = new RssReader('https://en.blog.wordpress.com/feed/');
- ?>
- <div>
- <?php foreach($reader->getRssItems() as $item):?>
- <div>
- <?=$item->title;?><br>
- Kategóriák:
- <?php foreach($item->category as $category):?>
- <?=$category;?>
- <?php endforeach;?>
- <br>
- Kép:
- <img src="<?=$item->children('media', true)->thumbnail->attributes();?>" width="150">
- <br>
- <?=$item->link;?><br>
- <?=$item->description;?><br>
- </div>
- <hr>
- <?php endforeach;?>
- </div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement