가끔 색인 페이지(홈페이지, 카테고리 기사, 태그 기사, 저자 기사 색인...)에 워드프레스 기사 루프(Loop)를 미리 입력해 우리가 얻고 싶은 정보를 얻을 때도 있지만, WP에서는, 단일 페이지는 일반적으로 한 번만 루프로 점프합니다. 즉, 다음 번에 루프에서 정보를 가져올 때 루프에서 두 번째 로그의 정보를 가져옵니다. 이 당황스러운 상황을 해결하기 위해 WordPress는 내장 함수인 rewind_posts() 함수는 루프 포인터를 재설정하는 데 특별히 사용됩니다.
설명 설명
루프 게시물을 되감습니다.
포스트 루프를 재설정합니다.
사용 이 함수는 변수를 허용하지 않습니다.
<?php rewind_posts(); ?>
예
이것은 WordPress 기본 테마 21에 있는 Author.php 파일의 15-55행에 대한 참조이며 단순화되었습니다.
<?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() );
요약
때때로 일부 워드프레스 기능은 루프에 들어가야 사용할 수 있기 때문에 특정 목적을 달성하기 위해서는 미리 루프에 들어가야 하지만, 만약 다음 코드에서는 여기에 루프가 사용되며 루프는 두 번째 포스트로 점프하므로 루프를 재설정하려면 rewind_posts()를 사용해야 합니다. 211 테마는 아주 간단한 예일 뿐입니다. 사용 시기는 테마 작성자의 사용 환경에 따라 다릅니다. 때로는 한 페이지에서 두 번 이상 기사를 순환해야 할 경우 기능을 변경하는 것이 더 유용합니다.
PS: Single_cat_title() 함수
single_cat_title() 함수는 일상생활에서 거의 사용되지 않지만, 이 함수는 현재 페이지의 디렉토리나 태그 등 우리에게 많은 문제를 해결해 줍니다. not WordPress 메인 루프에 연결되어 있으며 메인 루프에서 사용할 수 없습니다.
설명
현재 페이지의 카테고리와 태그를 가져옵니다.
<?php single_cat_title($prefix,$display); ?>
예
다음은 WordPress 2011 기본 테마에서 발췌한 것으로, Category.php 파일의 18번째 줄에 있는 코드입니다
<?php printf( __( 'Category Archives: %s', 'twentyeleven' ), '<span>' . single_cat_title( '', false ) . '</span>' ); ?>
위에서는 WordPress에서 포스트 주기를 재설정하는 rewind_posts 함수를 소개했으며, 관련 내용도 포함되어 있어 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.