wp_ajax_get_revision_diffs

函数
wp_ajax_get_revision_diffs ( No parameters )

wp_ajax_get_revision_diffs: 这个函数是一个WordPress的AJAX处理程序,返回一个文章的两个修订版之间的差异。它把文章的ID、旧版本的ID和新版本的ID作为参数,并在AJAX响应中返回差异。

用于获取修订差异的Ajax处理程序。

function wp_ajax_get_revision_diffs() {
	require ABSPATH . 'wp-admin/includes/revision.php';

	$post = get_post( (int) $_REQUEST['post_id'] );
	if ( ! $post ) {
		wp_send_json_error();
	}

	if ( ! current_user_can( 'edit_post', $post->ID ) ) {
		wp_send_json_error();
	}

	// Really just pre-loading the cache here.
	$revisions = wp_get_post_revisions( $post->ID, array( 'check_enabled' => false ) );
	if ( ! $revisions ) {
		wp_send_json_error();
	}

	$return = array();
	set_time_limit( 0 );

	foreach ( $_REQUEST['compare'] as $compare_key ) {
		list( $compare_from, $compare_to ) = explode( ':', $compare_key ); // from:to

		$return[] = array(
			'id'     => $compare_key,
			'fields' => wp_get_revision_ui_diff( $post, $compare_from, $compare_to ),
		);
	}
	wp_send_json_success( $return );
}

常见问题

FAQs
查看更多 >