WP_List_Table::ajax_response()publicWP 3.1.0

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

Method of the class: WP_List_Table{}

No Hooks.

Return

null. Nothing (null).

Usage

$WP_List_Table = new WP_List_Table();
$WP_List_Table->ajax_response();

Changelog

Since 3.1.0 Introduced.

WP_List_Table::ajax_response() code WP 6.6.2

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 ) );
}