PHP provides simplexml_load_file() function for reading data from XML file. We have seen about this function in Simple XML Parser tutorial.
Using this function, we are going to read RSS feeds by passing the feed URL to this function. In this tutorial, we are parsing RSS feed and splitting it into an object array.
By iterating this object array, we are getting required property of each feed item to display.
This shortcode is used to parse XML feed URL to read data item and display.
<?php
$rss_feed = simplexml_load_file("https://phppot.com/feed/");
if (! empty($rss_feed)) {
$i = 0;
foreach ($rss_feed->channel->item as $feed_item) {
if ($i >= 10)
break;
?>
<div>
<a class="feed_title" href="<?php echo $feed_item->link; ?>"><?php echo $feed_item->title; ?></a>
</div>
<div><?php echo implode(' ', array_slice(explode(' ', $feed_item->description), 0, 14)) . "..."; ?></div>
<?php
$i ++;
}
}
?>
This HTML table will display list of RSS feed items by iterating item array.
<table class=”rss-table”> <tbody> <tr> <th><strong>PhpPot RSS Feed</strong></th> </tr> <?php //Loop starts for iterating feed item array ?> <tr> <td valign=”top”> <div><a class=”feed_title” href=”<?php echo $feed_item->link; ?>”><?php echo $feed_item->title; ?></a></div> <div><?php echo implode(‘ ‘, array_slice(explode(‘ ‘, $feed_item->description), 0, 14)) . “…”; ?></div> </td> </tr> <?php // Loop ends ?> </tbody> </table>