Cum să obții categoria unei postări și să o conectezi cu arhiva (categoriei)
Încerc să creez un buton în sidebar care să fie legat de postarea afișată. Butonul este practic un "alte știri din CAT1". Am acest fragment de cod:
<div id="pagine">
<?php
$category = get_the_category();
if($category[0]){
echo '<a href="'.get_category_link($category[0]->term_id ).'"><div id="pagine"><ul><li>Știri despre '.$category[0]->cat_name.'</li></ul></div></a>';
}
?>
</div>
care din păcate afișează categoria greșită. Poate cineva să-mi spună cum să procedez corect? Nu ar trebui să fie atât de dificil, abia am început să lucrez cu WordPress.
Unul dintre aceste trei ar trebui să facă treaba pentru tine...
1. Funcția: the_category();
Știri despre <?php the_category(', '); ?>
Se afișează ca:
Știri despre WordPress, Calculatoare, Blogging
Și dacă doar o singură categorie este atribuită unui articol, va apărea astfel:
Știri despre WordPress
2. Funcția: get_the_category_list();
<div id="pagine"><?php echo get_the_category_list(); ?></div>
Se afișează ca:
<div id="pagine">
<ul class="post-categories">
<li>
<a href="http://example.com/category/wordpress/" title="Vezi toate articolele din Business" rel="category tag">WordPress</a>
</li>
<li>
<a href="http://example.com/category/computers/" title="Vezi toate articolele din Business" rel="category tag">Calculatoare</a>
</li>
</ul>
</div>
Și dacă doar o singură categorie este atribuită unui articol, rezultatul va arăta astfel:
<div id="pagine">
<ul class="post-categories">
<li>
<a href="http://example.com/category/wordpress/" title="Vezi toate articolele din Business" rel="category tag">WordPress</a>
</li>
</ul>
</div>
3. Funcția: single_cat_title();
Dacă dorești să afișezi doar o singură categorie (categoria cu cel mai mic ID va fi afișată), indiferent de câte categorii sunt atribuite unui articol, folosește ceva de genul:
<div id="pagine">
<ul>
<li>
<?php
$category = get_the_category();
echo '<a href="'.get_category_link($category[0]->cat_ID).'">Știri despre ' . $category[0]->cat_name . '</a>';
?>
</li>
</ul>
</div>
Codul de mai sus afișează întotdeauna o singură categorie, astfel:
Știri despre WordPress
Așadar, având în vedere codurile (și ce face fiecare), alege-le în funcție de nevoile tale.

Mulțumesc, Chris_O. Motivul pentru care afișa categoria greșită este că, din anumite motive, majoritatea postărilor au categoria greșită! Funcția print_r a arătat că majoritatea sunt în categoria greșită. Dar lucrul deranjant este că în WP CMS postarea este în categoria corectă! De exemplu. În CMS, postA este în categoriaA, în timp ce cu print_r arată categoriaB! De ce crezi că se întâmplă asta? Mulțumesc pentru timpul acordat.
