WordPress: Difference between rewind_posts(), wp_reset_postdata() and wp_reset_query()
WordPress 기능의 차이점은 무엇입니까?rewind_posts()
,wp_reset_postdata()
그리고.wp_reset_query()
언제 사용해야 합니까?
이 부분의 코드가 있는 경우single.php
:
$query = new WP_Query($some_args);
while ($query->have_posts()) : $query->the_post();
...
endwhile;
is this equal to this:
$query = new WP_Query($some_args);
while (have_posts()) : the_post();
...
endwhile;
The two statements in your question aren't equal.
사용자 정의 WP_Query에 의해 반환된 게시물을 검색하는 첫 번째 블록에서,$query
.
두번째 블록에서$query
아무것도 하지 않고 게시물들은 사실 전세계에서 온 것입니다.$wp_query
.
Let's look at what each of the three functions you mentioned do.
rewind_posts()
- 이렇게 하면 소리가 그대로 나옵니다.루프를 실행한 후에는 이 함수를 사용하여 처음으로 돌아가 동일한 루프를 다시 실행할 수 있습니다.
wp_reset_postdata()
- 코드의 첫 번째 블록에서는 사용자 정의 WP_Query를 실행합니다.이렇게 하면 전역이 수정됩니다.$post
변수.이 쿼리를 실행한 후에는wp_reset_postdata()
전세계를 회복할 것입니다.$post
변수를 기본 쿼리의 첫 번째 게시물로 되돌립니다.
wp_reset_query()
- 글로벌을 변경할 경우 사용해야 합니다.$wp_query
아니면 사용query_posts()
(사용하는 것을 제안하지 않습니다.query_posts()
. 재설정됩니다.$wp_query
원초적으로
Further reading:
http://codex.wordpress.org/Function_Reference/rewind_posts http://codex.wordpress.org/Function_Reference/wp_reset_postdata http://codex.wordpress.org/Function_Reference/wp_reset_query
Rewind post - Rewinds to the beginning of the cycle.It generally the clears the current loop. Example
<? Php
/ / use the cycle for the first time
if ( have_posts ( ) ) { while ( have_posts ( ) ) { the_post ( ) ; ?>
< ! - - display information about the post - - >
<? php } } ?>
< ! - - any - anything any code - - >
<? Php
/ / use the cycle for the second time
/ / rewind to the beginning of the cycle to once again ispolzvoat heve_posts ()
rewind_posts ( ) ;
if ( have_posts ( ) ) { while ( have_posts ( ) ) { the_post ( ) ; ?>
< ! - - display information about the post - - >
<? php } } ?>
You probably don’t need wp_reset_query(). wp_reset_query() unsets the main $wp_query variable, then resets it to the value of $wp_the_query, and then runs wp_reset_postdata(). Well, if you’re not using query_posts(), then you really shouldn’t be messing with the main $wp_query variable, as wp_reset_query() does.
All you need to do after a custom WP_Query is use wp_reset_postdata(), which resets various global post variables to their original values.
Reference here
ReferenceURL : https://stackoverflow.com/questions/23729847/wordpress-difference-between-rewind-posts-wp-reset-postdata-and-wp-reset-q
'code' 카테고리의 다른 글
NSUInter 대 NSInter, Int 대 Unsigned 및 유사한 경우 (0) | 2023.09.15 |
---|---|
윈도우 7에서 C 프로그래밍을 컴파일하는 방법은? (0) | 2023.09.15 |
CSS에서 HTML colspan (0) | 2023.09.15 |
모든 확인란이 선택되어 있는지 확인합니다. (0) | 2023.09.15 |
700M 행의 Oracle 테이블에서 실행되는 업데이트 SQL을 최적화하는 방법 (0) | 2023.09.15 |