wp_ajax_widgets_order

函数
wp_ajax_widgets_order ( No parameters )

wp_ajax_widgets_order:此函数用于处理ajax请求以更新小工具的顺序。它使用wp_ajax_widgets_order操作来钩住ajax请求并执行必要的操作: 该函数首先检查当前用户是否具有更新小工具的权限,然后使用给定参数更新小工具顺序。

用于保存widgets顺序的Ajax处理程序。

function wp_ajax_widgets_order() {
	check_ajax_referer( 'save-sidebar-widgets', 'savewidgets' );

	if ( ! current_user_can( 'edit_theme_options' ) ) {
		wp_die( -1 );
	}

	unset( $_POST['savewidgets'], $_POST['action'] );

	// Save widgets order for all sidebars.
	if ( is_array( $_POST['sidebars'] ) ) {
		$sidebars = array();

		foreach ( wp_unslash( $_POST['sidebars'] ) as $key => $val ) {
			$sb = array();

			if ( ! empty( $val ) ) {
				$val = explode( ',', $val );

				foreach ( $val as $k => $v ) {
					if ( strpos( $v, 'widget-' ) === false ) {
						continue;
					}

					$sb[ $k ] = substr( $v, strpos( $v, '_' ) + 1 );
				}
			}
			$sidebars[ $key ] = $sb;
		}

		wp_set_sidebars_widgets( $sidebars );
		wp_die( 1 );
	}

	wp_die( -1 );
}

常见问题

FAQs
查看更多 >