返回介绍

get_next_posts_link()

发布于 2017-09-10 23:37:25 字数 4376 浏览 922 评论 0 收藏 0

get_next_posts_link( string $label = null,  int $max_page )

Retrieves the next posts page link.


description


参数

$label

(string) (Optional) Content for link text.

Default value: null

$max_page

(int) (Optional) Max pages. Default 0.


返回值

(string|void) HTML-formatted next posts page link.


源代码

File: wp-includes/link-template.php

function get_next_posts_link( $label = null, $max_page = 0 ) {
	global $paged, $wp_query;

	if ( !$max_page )
		$max_page = $wp_query->max_num_pages;

	if ( !$paged )
		$paged = 1;

	$nextpage = intval($paged) + 1;

	if ( null === $label )
		$label = __( 'Next Page »' );

	if ( !is_single() && ( $nextpage <= $max_page ) ) {
		/**
		 * Filters the anchor tag attributes for the next posts page link.
		 *
		 * @since 2.7.0
		 *
		 * @param string $attributes Attributes for the anchor tag.
		 */
		$attr = apply_filters( 'next_posts_link_attributes', '' );

		return '<a href="' . next_posts( $max_page, false ) . "\" $attr>" . preg_replace('/&([^#])(?![a-z]{1,8};)/i', '&$1', $label) . '</a>';
	}
}

更新日志

Versiondescription
2.7.0Introduced.

相关函数

Uses

  • wp-includes/l10n.php: __()
  • wp-includes/query.php: is_single()
  • wp-includes/link-template.php: next_posts()
  • wp-includes/link-template.php: next_posts_link_attributes
  • wp-includes/plugin.php: apply_filters()

Used By

  • wp-includes/link-template.php: get_the_posts_navigation()
  • wp-includes/link-template.php: next_posts_link()
  • wp-includes/link-template.php: get_posts_nav_link()

User Contributed Notes

  1. Skip to note content You must log in to vote on the helpfulness of this noteVote results for this note: 0You must log in to vote on the helpfulness of this note Contributed by Codex

    Default Usage

    
    echo get_next_posts_link();
    
  2. Custom Label

    
    echo get_next_posts_link( __( 'Go to next page', 'textdomain' ) );
    

    Custom Label and Custom number of post pages

    
    echo get_next_posts_link( __( 'Go to next page', 'textdomain' ), 4 );
    

    Usage when querying the loop with WP_Query

    Pass the $max_page parameter to the get_next_posts_link() function when querying the loop with WP_Query. To get the total amount of pages you can use the max_num_pages property of the custom WP_Query object.

    
    <?php
    /**
     * Set the "paged" parameter (use 'page' if the query is on a static front page).
     *
     * @var int $paged
     */
    $paged = get_query_var( 'paged' ) ? intval( get_query_var( 'paged' ) ) : 1;
    
    /** @var WP_Query $the_query */
    $the_query = new WP_Query( 'cat=1&paged=' . $paged );
    
    if ( $the_query->have_posts() ) :
    
    	// The Loop
    	while ( $the_query->have_posts() ) : $the_query->the_post();
    		the_title();
    	endwhile;
    
    	// get_next_posts_link() usage with max_num_pages.
    	echo get_next_posts_link( __( 'Older Entries', 'textdomain' ), $the_query->max_num_pages );
    	echo get_previous_posts_link( __( 'Newer Entries', 'textdomain' ) );
    
    	// Clean up after our custom query.
    	wp_reset_postdata();
    
    else :
    	?>
    	<p><?php _e( 'Sorry, no posts matched your criteria.', 'textdomain' ); ?></p>
    <?php endif; ?>
    

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文