wp_widget_rss_process

函数
wp_widget_rss_process ( $widget_rss, $check_feed = true )
参数
  • (array) $widget_rss RSS widget feed data. Expects unescaped data.
    Required:
  • (bool) $check_feed Optional. Whether to check feed for errors. Default true.
    Required:
    Default: true
返回值
  • (array)
定义位置
相关方法
wp_widget_rss_formwp_widget_rss_outputwp_widget_controlwp_ajax_widgets_order_wp_die_process_input
引入
2.5.0
弃用
-

wp_widget_rss_process – 这个函数用来处理WordPress小工具管理界面中RSS小工具的小工具控制表格的输入。它负责根据用户的输入来更新RSS小工具的设置。

处理RSS feed小工具的数据,并可选择检索提要项目。

Feed widget不能有超过20个项目,否则它将重置为默认值,即10个。

结果数组有feed标题、feed网址、feed链接(来自频道)、feed项目、错误(如果有),以及是否显示摘要、作者和日期。所有这些都分别按照数组元素的顺序排列。

function wp_widget_rss_process( $widget_rss, $check_feed = true ) {
	$items = (int) $widget_rss['items'];
	if ( $items < 1 || 20 < $items ) {
		$items = 10;
	}
	$url          = sanitize_url( 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' );
}

常见问题

FAQs
查看更多 >