/ Published in: PHP
shortcode :
[rss size="10" feed="http://wordpress.org/news/feed/" date="true"]
[rss size="10" feed="http://wordpress.org/news/feed/" date="true"]
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
/* * Re-usable RSS feed reader with shortcode */ function base_rss_feed($size = 5, $feed = 'http://wordpress.org/news/feed/', $date = false, $cache_time = 1800) { // Include SimplePie RSS parsing engine include_once ABSPATH . WPINC . '/feed.php'; // Set the cache time for SimplePie // Build the SimplePie object $rss = fetch_feed($feed); // Check for errors in the RSS XML if (!is_wp_error( $rss ) ) { // Set a limit for the number of items to parse $maxitems = $rss->get_item_quantity($size); $rss_items = $rss->get_items(0, $maxitems); // Store the total number of items found in the feed $i = 0; // Output HTML $html = "<ul class='feedlist'>"; foreach ($rss_items as $item) { $i++; // Add a class of "last" to the last item in the list if( $total_entries == $i ) { $last = " class='last'"; } else { $last = ""; } // Store the data we need from the feed $title = $item->get_title(); $link = $item->get_permalink(); $desc = $item->get_description(); $date_posted = $item->get_date('d/m/Y'); //$desc = strip_tags($desc); $desc = apply_filters('the_excerpt', $desc); //print(' --- strlen : '.strlen($desc)); $excerpt_length = 100; //print(' --- words : '.count($words)); endif; // Output $html .= "<li id='post-$i'$last>"; $html .= "<h4><a href='$link'>$title</a></h4>"; if( $date == true ) $html .= "<span class='date'>$date_posted</span>"; $html .= "<div class='rss-entry'>$desc</a></h4></div>"; $html .= "</li>"; } $html .= "</ul>"; } else { $html = "An error occurred while parsing your RSS feed. Check that it's a valid XML file."; } return $html; } } /** Define [rss] shortcode */ function base_rss_shortcode($atts) { 'size' => '10', 'feed' => 'http://wordpress.org/news/feed/', 'date' => false, ), $atts)); $content = base_rss_feed($size, $feed, $date); return $content; } add_shortcode("rss", "base_rss_shortcode"); }
URL: http://www.kevinleary.net/display-rss-feeds-wordpress-shortcodes-simplepie-fetch_feed/