Sometimes, in the index page (home page, category articles, tag articles, author article index...), we enter the WordPress article loop (Loop) in advance to get some information we want to get, but in WP, a single page is generally It will only jump into the loop once, that is to say, the next time we draw information from the loop, we will get the information of the second log in the loop. In order to solve this embarrassing situation, WordPress has a built-in function, rewind_posts () function is specifically used to reset the loop pointer.
Description Description
Rewind the loop posts.
Reset the post loop.
Use
This function does not accept variables.
<?php rewind_posts(); ?>
Example
Here we quote lines 15-55 of the author.php file in the WordPress default theme twenty eleven, and simplify them.
<?php if ( have_posts() ) : the_post();//进入循环 echo get_the_author() ; //显示文章作者,在循环外使用需指定作者ID rewind_posts();//重置循环 while ( have_posts() ) : the_post(); //循环开始 get_template_part( 'content', get_post_format() );
Summary
Sometimes, some WordPress functions must enter a loop before they can be used, so we have to enter the loop in advance to achieve certain purposes, but if we use loops here in the following code, then The loop will jump to the second post, so we have to use rewind_posts() to reset the loop. The twenty eleven theme just gives a very simple example. When to use it depends on the usage environment of the theme author. Sometimes we need to cycle through articles twice or more on a page, then Changing the function will be more useful.
PS: single_cat_title() function
single_cat_title() function, we rarely use it in daily life, but this function will solve many problems for us, such as the directory and tags of the current page. This function is not attached to the WordPress main loop , and cannot be used in the main loop.
Description
Get the category and tag of the current page.
<?php single_cat_title($prefix,$display); ?>
Example
Here is an excerpt of the code around line 18 of the category.php file in the WordPress 2011 default theme
<?php printf( __( 'Category Archives: %s', 'twentyeleven' ), '<span>' . single_cat_title( '', false ) . '</span>' ); ?>
The above has introduced the rewind_posts function to reset the post cycle in WordPress, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.