wp_widget_rss_process() WordPress Function
The wp_widget_rss_process() function handles the processing of RSS feeds for display in a WordPress widget. This function is called when a user adds an RSS feed to a widget from the WordPress admin interface. The function retrieves the RSS feed from the specified URL and parses it for display in the widget.
wp_widget_rss_process( array $widget_rss, bool $check_feed = true ) #
Process RSS feed widget data and optionally retrieve feed items.
Description
The feed widget can not have more than 20 items or it will reset back to the default, which is 10.
The resulting array has the feed title, feed url, feed link (from channel), feed items, error (if any), and whether to show summary, author, and date. All respectively in the order of the array elements.
Parameters
- $widget_rss
(array)(Required)RSS widget feed data. Expects unescaped data.
- $check_feed
(bool)(Optional) Whether to check feed for errors.
Default value: true
Return
(array)
Source
File: wp-includes/widgets.php
function wp_widget_rss_process( $widget_rss, $check_feed = true ) { $items = (int) $widget_rss['items']; if ( $items < 1 || 20 < $items ) { $items = 10; } $url = esc_url_raw( strip_tags( $widget_rss['url'] ) ); $title = isset( $widget_rss['title'] ) ? trim( strip_tags( $widget_rss['title'] ) ) : ''; $show_summary = isset( $widget_rss['show_summary'] ) ? (int) $widget_rss['show_summary'] : 0; $show_author = isset( $widget_rss['show_author'] ) ? (int) $widget_rss['show_author'] : 0; $show_date = isset( $widget_rss['show_date'] ) ? (int) $widget_rss['show_date'] : 0; $error = false; $link = ''; if ( $check_feed ) { $rss = fetch_feed( $url ); if ( is_wp_error( $rss ) ) { $error = $rss->get_error_message(); } else { $link = esc_url( strip_tags( $rss->get_permalink() ) ); while ( stristr( $link, 'http' ) !== $link ) { $link = substr( $link, 1 ); } $rss->__destruct(); unset( $rss ); } } return compact( 'title', 'url', 'link', 'items', 'error', 'show_summary', 'show_author', 'show_date' ); }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
2.5.0 | Introduced. |