Cum să obții obiectul categoriei pe pagina categoriei în WordPress
Bună, sper că e ceva simplu... Sunt pe o pagină de categorie cu id-ul 4 și vreau să obțin obiectul categoriei pentru a putea verifica câteva valori.
Am căutat în Codex-ul WP fără prea mult succes. Ține minte că nu vreau să obțin categoriile unui post, ci obiectul categoriei curente.
Mulțumesc mult, Ben :-)

$wp_query->get_queried_object()
este o funcție foarte versatilă. Va returna categoria curentă, eticheta, termenul de taxonomie personalizată, autorul, pagina sau articolul, în funcție de pagina/arhiva pe care o vizualizați. Deosebit de utilă dacă doriți să simplificați anteturile arhivelor.

Pentru a obține obiectul categoriei, folosește get_category
(codex). Este ușor dacă cunoști numele, slug-ul sau ID-ul, dar dacă nu le cunoști, poți folosi is_category
pentru a verifica în ce categorie te afli și apoi să transmiți ID-ul către get_category
.

Acest lucru nu are de fapt sens. De fapt, acesta este singurul răspuns care NU este un răspuns corect. OP dorea o modalitate de a obține obiectul categoriei. is_category nu "verifică în ce categorie vă aflați" - vă spune DACA sunteți pe o pagină de categorie. Dacă aveți ID-ul, atunci da, puteți folosi get_category(), dar presupun că aici OP folosea ID=4 ca un exemplu arbitrar, dar de fapt nu ar fi știut dinainte ID-ul categoriei pe care dorea să o interogheze.

Personal, aș recomanda să te obișnuiești să folosești get_term
sau get_terms
, deoarece funcțiile pentru categorii sunt doar funcții wrapper care la rândul lor apelează get_term(s)
.
<?php
$queried_category = get_term( get_query_var('cat'), 'category' );
// echo $queried_category->term_id; // ID-ul categoriei
// echo $queried_category->slug; // Slug-ul categoriei
// echo $queried_category->name; // Numele categoriei
// echo $queried_category->description; // Descrierea categoriei
?>
Obisnuindu-te cu funcțiile pentru termeni va face lucrul cu taxonomii personalizate mai ușor, deoarece în astfel de cazuri vei folosi aceste funcții.
http://codex.wordpress.org/Function_Reference/get_term
http://codex.wordpress.org/Function_Reference/get_terms
Și o funcție pe care nu o văd folosită des, dar care poate fi foarte utilă.
http://codex.wordpress.org/Function_Reference/get_term_by
Care oferă o modalitate de a obține un obiect termen bazat pe nume, slug sau ID.

Un caz interesant în care una dintre multiplele pagini de arhivă de categorii incluse într-un meniu personalizat a returnat un array gol pentru
get_the_category();
m-a obligat să analizez toate diferitele metode de a rezolva problema (fără joc de cuvinte intenționat).
is_category() RETURNEAZĂ true
get_the_category() RETURNEAZĂ un array gol
the_category() RETURNEAZĂ NULL
Soluția finală s-a dovedit a fi cea propusă de Ben Everard
get_category(get_query_var('cat'), false) RETURNEAZĂ obiectul WPCategory corect
Mulțumesc!

de fapt, răspunsul lui @JanFabry este cel care ar trebui marcat ca "corect" aici - get_queried_object()
, mult mai simplu și metoda preferată.
