Interogări multiple pentru tipuri de postări (cu argumente specifice pentru fiecare)
1 iun. 2012, 12:13:44
Vizualizări: 27K
Voturi: 1
Știu cum să combin tipurile de postări într-o singură buclă și să le afișez. Mai jos este ceea ce am:
<?php
$args = array(
'post_type' => array('post','movie','actor'),
'posts_per_page' => '20',
);
query_posts( $args );
while ( have_posts() ) : the_post();
the_title();
endwhile;
?>
Acest cod funcționează după cum era de așteptat, dar este posibil să specific argumente diferite pentru fiecare tip de postare, păstrându-le în aceeași buclă originală?
De exemplu, trebuie să adaug un argument meta_key=value
pentru tipurile de postare movie
și actor
. Este posibil acest lucru?
Toate răspunsurile la întrebare
1
1
Ai putea face ceva de genul acesta?
<?php
$args = array(
'post_type' => array('post','movie','actor'),
'posts_per_page' => '20',
);
query_posts( $args );
while ( have_posts() ) : the_post();
global $post;
if (($post_type == 'movie') && (get_post_meta($post->ID, 'meta_key', true) == 'your-value')) {
// Afișează conținutul pentru tipul de articol Film cu valoarea meta setată
} else if (($post_type == 'actor') && (get_post_meta($post->ID, 'meta_key', true) == 'your-other-value')) {
// Afișează conținutul pentru tipul de articol Actor și altă valoare meta
}
endwhile;
?>

Jason Bahl
180
1 iun. 2012 19:58:14
Comentarii
Mulțumesc pentru răspuns. Da, momentan aceasta este singura soluție pe care am găsit-o pentru a rezolva problema. Totuși, aceasta afectează argumentul posts_per_page
din interogarea originală din cauza faptului că nu toate postările au valorile meta specifice. Dar poate trebuie să acceptăm această soluție :/

2 iun. 2012 19:24:14
Întrebări similare
3
răspunsuri
2
răspunsuri
2
răspunsuri
3
răspunsuri