여러 게시물 ID로 게시물을 받으려면 어떻게합니까?


21

게시물 ID가있는 문자열이 있습니다 : 43,23,65. ID를 가진 문자열을 인수로
사용 get_posts()하고 사용할 수 있기를 바랍니다 .

그러나 ID로 여러 게시물을 검색하는 기능을 찾을 수 없습니다.

정말해야 WP_query합니까?

나는 또한 누군가가 언급을 사용하여 언급 한 것을 보았지만 tag_in이것에 대한 문서를 찾을 수 없습니다.


답변:


37

get_posts()와 동일한 인수를 사용 하므로 사용할 수 있습니다 WP_Query.

ID를 전달하려면 'post__in' => array(43,23,65)(배열 만 사용 )을 사용하십시오.

다음과 같은 것 :

$args = array(
    'post__in' => array(43,23,65)
);

$posts = get_posts($args);

foreach ($posts as $p) :
    //post!
endforeach;

나는 또한 설정 것 post_typeposts_per_page단지 좋은 측정합니다.


작동하지 않습니다.
반체제 분노

아니? 배열로 전달하고 있습니까? 두 개의 밑줄을 사용합니까 (post__in vs post_in)? post_type을 전달 하시겠습니까?
CookiesForDevo 1

1
맞춤 게시물 유형을 얻는 경우 post_type인수를 사용하고 5 개 이상의 결과를 원하는 경우 'nopaging' => true옵션을 추가하십시오 . 배열 대신 쉼표로 구분 된 문자열이 있으면 배열을 사용 explode(',',$input);하여 변환하십시오.
ejazz

1
에 전달 된 방식대로 게시물 순서를 유지하려면 array에 추가 'order_by' => 'post__in'해야합니다 $args.
rob_st

post_type매개 변수 사용에주의하십시오 . 의 경우 postfunction은 (는 )뿐만 아니라 맞춤 콘텐츠를 포함한 모든 콘텐츠 유형 을 반환 합니다 post.
퓨전

3

위의 작업을 수행 할 수 없다면 다음을 추가하십시오 post_type.

$args = array(
    'post_type' => 'pt_case_study',
    'post__in' => array(2417, 2112, 784)
);

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