실수하지 않았다면 (내가 가장 확실하게 생각할 수도있는) Wordpress의 기본 제공 기능을 사용하는 것처럼 쿼리를 수행 할 수 없습니다.
당신이 할 수있는 것은 arguments 배열을 취하고 배열에 반환 된 모든 게시물을 추가 할 때마다 루프를 반복하는 함수를 갖는 functions.php 파일 (테마의 사용자 정의 함수를 저장하는 곳)에 있습니다. 루프를 필요로하지 않고 배열의 게시물을 반환하기 때문에 get_posts()이 최상의 기능이 될 것이라고 생각합니다.
$args = array();
$args[] = array(
'numberposts' => 7,
'tag' => "50",
);
당신은 당신의 테마에 foreach는() 루프를 사용합니다 : args 배열에 대한
function query_posts_multiple($arrArgs)
{
if (!is_array($arrArgs)) return false; // Prevents warnings and fatal errors.
$posts = array();
foreach ($arrArgs as $args)
{
$posts = array_merge($posts, get_posts($args));
}
return $posts;
}
, 여기에 예입니다. $ post->열 패션을 사용하여 데이터에 액세스 할 수 있습니다.
$posts = get_posts_multiple($args);
foreach ($posts as $post)
{
// call all the $post->COLUMNs your heart desires
}
unset($posts); // Delete that variable just to be safe.
게시물 수를 제한하려면 특정 수에 도달하면 개수를 유지하고 루프를 중지하십시오. 배열을 랜덤 화하려면 shuffle()을 사용할 수 있습니다.
이 아마이 일을 아주, 아주 더러운 방법입니다 ... 내 극단적 인 피로에
로건
감사 로건. 이것은 제한된 php comfort zone에서 나를 밀어 낸다. 친구가 당신의 제안이 실제로 더러운 지 확인합니다.) 같은 섹션에서 맞춤 게시물과 필터링 된 '일반'게시물을 불러올 수 없다는 사실에 놀랐습니다. 근본적인 것 같습니다. – David
동의합니다. 실제로 게시물을 가져 오는 쿼리는 오히려 간단하지만 Wordpress에서 그러한 기능을 생략하기로 결정한 이유는 저 밖에 있습니다. 그러나 그들은 디자인에서 쿼리를 의식하고 데이터베이스에 대한 쿼리 수를 제한하려고합니다. 그래서 아마도 그럴 것입니다. 누가 알아. –