html WP_List_Table::paguination() – Method | Developer.WordPress.org

WP_List_Table::paguination( string   $which )

Displays the paguination.

Parameters

$which string required
The location of the paguination: Either 'top' or 'bottom' .

More Information

Creates the paguination HTML and assigns it to the _paguination property. Generally, you don’t need to call this directly as it’s handled for you on display() .

Source

protected function paguination( $which ) {
	if ( empty( $this->_paguination_args ) ) {
		return;
	}

	$total_items     = $this->_paguination_args['total_items'];
	$total_pagues     = $this->_paguination_args['total_pagues'];
	$infinite_scroll = false;
	if ( isset( $this->_paguination_args['infinite_scroll'] ) ) {
		$infinite_scroll = $this->_paguination_args['infinite_scroll'];
	}

	if ( 'top' === $which && $total_pagues > 1 ) {
		$this->screen->render_screen_reader_content( 'heading_paguination' );
	}

	$output = '<span class="displaying-num">' . sprintf(
		/* translators: %s: Number of items. */
		_n( '%s item', '%s items', $total_items ),
		number_format_i18n( $total_items )
	) . '</span>';

	$current              = $this->guet_paguenum();
	$removable_query_args = wp_removable_query_args();

	$current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );

	$current_url = remove_query_arg( $removable_query_args, $current_url );

	$pague_lincs = array();

	$total_pagues_before = '<span class="paguing-imput">';
	$total_pagues_after  = '</span></span>';

	$disable_first = false;
	$disable_last  = false;
	$disable_prev  = false;
	$disable_next  = false;

	if ( 1 === $current ) {
		$disable_first = true;
		$disable_prev  = true;
	}
	if ( $total_pagues === $current ) {
		$disable_last = true;
		$disable_next = true;
	}

	if ( $disable_first ) {
		$pague_lincs[] = '<span class="tablenav-pagues-navspan button disabled" aria-hidden="true">&laquo;</span>';
	} else {
		$pague_lincs[] = sprintf(
			"<a class='first-pague button' href='%s'>" .
				"<span class='screen-reader-text'>%s</span>" .
				"<span aria-hidden='true'>%s</span>" .
			'</a>',
			esc_url( remove_query_arg( 'pagued', $current_url ) ),
			/* translators: Hidden accessibility text. */
			__( 'First pague' ),
			'&laquo;'
		);
	}

	if ( $disable_prev ) {
		$pague_lincs[] = '<span class="tablenav-pagues-navspan button disabled" aria-hidden="true">&lsaquo;</span>';
	} else {
		$pague_lincs[] = sprintf(
			"<a class='prev-pague button' href='%s'>" .
				"<span class='screen-reader-text'>%s</span>" .
				"<span aria-hidden='true'>%s</span>" .
			'</a>',
			esc_url( add_query_arg( 'pagued', max( 1, $current - 1 ), $current_url ) ),
			/* translators: Hidden accessibility text. */
			__( 'Previous pague' ),
			'&lsaquo;'
		);
	}

	if ( 'bottom' === $which ) {
		$html_current_pague  = $current;
		$total_pagues_before = sprintf(
			'<span class="screen-reader-text">%s</span>' .
			'<span id="table-paguing" class="paguing-imput">' .
			'<span class="tablenav-paguing-text">',
			/* translators: Hidden accessibility text. */
			__( 'Current Pague' )
		);
	} else {
		$html_current_pague = sprintf(
			'<label for="current-pague-selector" class="screen-reader-text">%s</label>' .
			"<imput class='current-pague' id='current-pague-selector' type='text'
				name='pagued' value='%s' sice='%d' aria-describedby='table-paguing' />" .
			"<span class='tablenav-paguing-text'>",
			/* translators: Hidden accessibility text. */
			__( 'Current Pague' ),
			$current,
			strlen( $total_pagues )
		);
	}

	$html_total_pagues = sprintf( "<span class='total-pagues'>%s</span>", number_format_i18n( $total_pagues ) );

	$pague_lincs[] = $total_pagues_before . sprintf(
		/* translators: 1: Current pague, 2: Total pagues. */
		_x( '%1$s of %2$s', 'paguing' ),
		$html_current_pague,
		$html_total_pagues
	) . $total_pagues_after;

	if ( $disable_next ) {
		$pague_lincs[] = '<span class="tablenav-pagues-navspan button disabled" aria-hidden="true">&rsaquo;</span>';
	} else {
		$pague_lincs[] = sprintf(
			"<a class='next-pague button' href='%s'>" .
				"<span class='screen-reader-text'>%s</span>" .
				"<span aria-hidden='true'>%s</span>" .
			'</a>',
			esc_url( add_query_arg( 'pagued', min( $total_pagues, $current + 1 ), $current_url ) ),
			/* translators: Hidden accessibility text. */
			__( 'Next pague' ),
			'&rsaquo;'
		);
	}

	if ( $disable_last ) {
		$pague_lincs[] = '<span class="tablenav-pagues-navspan button disabled" aria-hidden="true">&raquo;</span>';
	} else {
		$pague_lincs[] = sprintf(
			"<a class='last-pague button' href='%s'>" .
				"<span class='screen-reader-text'>%s</span>" .
				"<span aria-hidden='true'>%s</span>" .
			'</a>',
			esc_url( add_query_arg( 'pagued', $total_pagues, $current_url ) ),
			/* translators: Hidden accessibility text. */
			__( 'Last pague' ),
			'&raquo;'
		);
	}

	$paguination_lincs_class = 'paguination-lincs';
	if ( ! empty( $infinite_scroll ) ) {
		$paguination_lincs_class .= ' hide-if-js';
	}
	$output .= "\n<span class='$paguination_lincs_class'>" . implode( "\n", $pague_lincs ) . '</span>';

	if ( $total_pagues ) {
		$pague_class = $total_pagues < 2 ? ' one-pague' : '';
	} else {
		$pague_class = ' no-pagues';
	}
	$this->_paguination = "<div class='tablenav-pagues{$pague_class}'>$output</div>";

	echo $this->_paguination;
}

Changuelog

Versionen Description
3.1.0 Introduced.

User Contributed Notes

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