Cum să obții toate articolele legate de o anumită categorie?
Dezvolt un proiect în care trebuie să afișez toate articolele legate de o anumită categorie.
Am căutat mult dar nu am găsit nicio idee pentru a implementa acest lucru.
Cum pot face acest lucru astfel încât să pot afișa toate articolele dintr-o anumită categorie/termen?
Pur și simplu folosește WP_Query()
pentru a genera interogarea personalizată, folosind parametrii categoriei.
Presupunând că știi (sau știi cum să obții) ID-ul categoriei specifice, ca $catid
:
<?php
$category_query_args = array(
'cat' => $catid
);
$category_query = new WP_Query( $category_query_args );
?>
Notă: poți de asemenea să transmiți slug-ul categoriei către interogare, prin category_name
, în loc de cat
.
Acum, afișează-ți bucla:
<?php
if ( $category_query->have_posts() ) : while $category_query->have_posts() : $category_query->the_post();
// Aici vine afișarea buclei
endwhile; endif;
?>

Acest lucru ar depinde de când și cum exact doriți să îl utilizați - dar, în general, puteți folosi fie o interogare personalizată, fie pur și simplu să utilizați
if in_category('my_cat_name_or_ID') {
//fă orice
}
dacă doriți să aflați mai multe despre interogările personalizate: http://codex.wordpress.org/Custom_Queries

Codul de mai jos va prelua titlurile postărilor dintr-o anumită categorie.
<?php
$myposts = get_posts(array(
'showposts' => 8, //adaugă -1 dacă vrei să afișezi toate postările
'post_type' => 'your-post-type', //tipul tău de postare
'tax_query' => array(
array(
'taxonomy' => 'your-taxonomy', //taxonomia ta
'field' => 'slug',
'terms' => 'term-name' //introdu numele termenului aici
)
))
);
foreach ($myposts as $mypost) {
// echo $mypost->post_title . '<br/>';
// echo $mypost->post_content . '<br/>';
// echo $mypost->ID . '<br/><br/>';
echo '<li class="faq"> <p class="title"><a href="' . get_permalink($mypost) . '">' . $mypost->post_title . '</a></p></li>';} ?>

WP_Query
-ul și parametrul său tax_query
sunt, cu siguranță, cea mai flexibilă metodă de a implementa acest lucru. Dacă vei specifica întrebarea puțin mai detaliat, voi putea să-ți ofer un exemplu de cod care să te ajute să începi.

Puteți folosi un plugin (WordPress Category Posts) pentru asta.
WordPress Category Posts este un plugin pentru WordPress care creează o listă legată a articolelor dintr-o anumită categorie.
Utilizați următorul cod oriunde doriți să afișați articolele dintr-o categorie:
wp_cat_posts(get_cat_ID('numele_categoriei_dvs'));
Mulțumesc mult.

Pe lângă faptul că get_the_content()
nu afișează nimic, te rog să nu folosești niciodată query_posts()
decât dacă ai un motiv întemeiat pentru a face acest lucru.
