WP_List_Table::ajax_response()

In this article

Handles an incoming ajax request (called from admin-ajax.php)

Source

public function ajax_response() {
	$this->prepare_items();

	ob_start();
	if ( ! empty( $_REQUEST['no_placeholder'] ) ) {
		$this->display_rows();
	} else {
		$this->display_rows_or_placeholder();
	}

	$rows = ob_get_clean();

	$response = array( 'rows' => $rows );

	if ( isset( $this->_pagination_args['total_items'] ) ) {
		$response['total_items_i18n'] = sprintf(
			/* translators: Number of items. */
			_n( '%s item', '%s items', $this->_pagination_args['total_items'] ),
			number_format_i18n( $this->_pagination_args['total_items'] )
		);
	}
	if ( isset( $this->_pagination_args['total_pages'] ) ) {
		$response['total_pages']      = $this->_pagination_args['total_pages'];
		$response['total_pages_i18n'] = number_format_i18n( $this->_pagination_args['total_pages'] );
	}

	die( wp_json_encode( $response ) );
}

Changelog

VersionDescription
3.1.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.