web-dev-qa-db-fra.com

Sur la page de catégorie, récupérez l'objet catégorie

D'accord, j'espère être simple et agréable ... Je suis sur une page de catégorie avec l'id de 4, je veux récupérer l'objet de catégorie pour pouvoir interagir avec quelques valeurs.

J'ai eu un bon vieux look dans le codex WP avec peu de succès, souvenez-vous que je ne veux pas obtenir les catégories d'un article, je veux l'objet catégorie de la catégorie actuelle.

Merci beaucoup, Ben :-)

5
Ben Everard

Pour obtenir l’objet category, utilisez get_category ( codex ). C'est facile si vous connaissez le nom, le slug ou l'ID, mais si vous ne le savez pas, vous pouvez utiliser is_category pour vérifier votre catégorie et transmettre l'ID à get_category.

5
Fernando Briano

Bon sang, alors j'ai trouvé la réponse que je cherchais:

$thisCat = get_category(get_query_var('cat'),false);

Ça ne fait rien :-)

10
Ben Everard

$wp_query->get_queried_object() est une fonction très polyvalente. Il renverra la catégorie, le tag, le terme de taxonomie personnalisé, l'auteur, la page ou le message en cours, en fonction de la page/de l'archive que vous consultez. Particulièrement utile si vous voulez simplifier vos en-têtes d'archives .

6
Jan Fabry

Personnellement, j’ai l’habitude d’appeler get_term ou get_terms, car les fonctions de catégorie ne sont que des fonctions d’emballage qui appellent à leur tour get_term(s) de toute façon.

<?php 
$queried_category = get_term( get_query_var('cat'), 'category' ); 

// echo $queried_category->term_id; // The category ID
// echo $queried_category->slug; // The category slug
// echo $queried_category->name; // The category name 
// echo $queried_category->description; // The category description 
?> 

Vous familiariser avec le terme fonction facilitera un peu la gestion des taxonomies personnalisées, car vous utiliserez ces fonctions dans de tels cas.

http://codex.wordpress.org/Function_Reference/get_term
http://codex.wordpress.org/Function_Reference/get_terms

Et une fonction que je ne vois pas très utilisée, mais qui peut être très pratique.
http://codex.wordpress.org/Function_Reference/get_term_by
Ce qui permet de récupérer un objet terme en fonction d'un nom, d'un slug ou d'un ID.

3
t31os

Un cas intéressant où l’une des nombreuses pages d’archives de catégories incluses dans un menu personnalisé a renvoyé un tableau vide pour

get_the_category();

m'a obligé à passer par toutes les façons différentes pour écorcher un chat (sans jeu de mots).

is_category() RETURNS true
get_the_category() RETURNS an empty array
the_category() RETURNS NULL

La réponse finale a fini par être Ben Everard 's

 get_category(get_query_var('cat'), false) RETURNS the correct WPCategory object

Merci!

1
Michael Angstadt