setup_postdata ($ post)의 기능은 무엇입니까?


13

코덱은이를 '전역 게시 데이터 설정'으로 정의합니다. 템플릿 태그 사용을위한 맞춤 검색어 결과 형식을 지정하는 데 도움이됩니다. ' 나는 이것을 정말로 이해하지 못한다.

코드 예제는 다음과 같습니다.

global $post;
$args = array( 'numberposts' => -1);
$posts = get_posts($args);
foreach( $posts as $post) : setup_postdata($post);
echo $post->ID;
endforeach; 

설명해 주시겠습니까?

답변:


16

템플릿 태그 함수는 전역 변수를 사용하여 처리중인 게시물에 액세스하고 관련 게시물 또는 관련 게시물을 검색합니다.

주요 변수 $post는 포스트 오브젝트 자체를 보유하는 것입니다. 귀하의 예에서는 명시 적이 지 않지만 반복되는 것은 루프 $post이름에 데이터를 할당하는 것 입니다. 반복 이름이 없으면 $post명시 적으로 수행해야합니다 ( global $post; $post = $some_other_post;).

그러나 많은 다른 세계가 있으며 그 목적은 setup_postdata()데이터를 채우는 것입니다. 소스를 보면 다음과 같습니다.

global $id, $authordata, $currentday, $currentmonth, $page, $pages, $multipage, $more, $numpages;

대부분의 경우 wp_reset_postdata()전역을 원래 상태로 되돌리려면 나중에 전화해야합니다 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.