wp_dashboard_rss_control

函数
wp_dashboard_rss_control ( $widget_id, $form_inputs = array() )
参数
  • (string) $widget_id
    Required:
  • (array) $form_inputs
    Required:
    Default: array()
定义位置
相关方法
wp_dashboard_primary_controlwp_dashboard_secondary_controlwp_dashboard_rss_outputwp_dashboard_secondarywp_dashboard_recent_comments_control
引入
2.5.0
弃用
-

wp_dashboard_rss_control:此函数用于创建rss仪表盘小工具的表单。它生成用于添加或编辑RSS提要URL和标题的表单字段。

RSS仪表盘小工具控件。

设置$args,作为wp_widget_rss_form()的输入。处理POST数据 处理来自RSS类型小工具的POST数据。

function wp_dashboard_rss_control( $widget_id, $form_inputs = array() ) {
	$widget_options = get_option( 'dashboard_widget_options' );

	if ( ! $widget_options ) {
		$widget_options = array();
	}

	if ( ! isset( $widget_options[ $widget_id ] ) ) {
		$widget_options[ $widget_id ] = array();
	}

	$number = 1; // Hack to use wp_widget_rss_form().

	$widget_options[ $widget_id ]['number'] = $number;

	if ( 'POST' === $_SERVER['REQUEST_METHOD'] && isset( $_POST['widget-rss'][ $number ] ) ) {
		$_POST['widget-rss'][ $number ]         = wp_unslash( $_POST['widget-rss'][ $number ] );
		$widget_options[ $widget_id ]           = wp_widget_rss_process( $_POST['widget-rss'][ $number ] );
		$widget_options[ $widget_id ]['number'] = $number;

		// Title is optional. If black, fill it if possible.
		if ( ! $widget_options[ $widget_id ]['title'] && isset( $_POST['widget-rss'][ $number ]['title'] ) ) {
			$rss = fetch_feed( $widget_options[ $widget_id ]['url'] );
			if ( is_wp_error( $rss ) ) {
				$widget_options[ $widget_id ]['title'] = htmlentities( __( 'Unknown Feed' ) );
			} else {
				$widget_options[ $widget_id ]['title'] = htmlentities( strip_tags( $rss->get_title() ) );
				$rss->__destruct();
				unset( $rss );
			}
		}

		update_option( 'dashboard_widget_options', $widget_options );

		$locale    = get_user_locale();
		$cache_key = 'dash_v2_' . md5( $widget_id . '_' . $locale );
		delete_transient( $cache_key );
	}

	wp_widget_rss_form( $widget_options[ $widget_id ], $form_inputs );
}

常见问题

FAQs
查看更多 >