用于保存小部件顺序的Ajax处理程序。

原型

wp_ajax_widgets_order()

源文件

路径:wp-admin/includes/ajax-actions.php

<?php
...
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 );
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_ajax_widgets_order/