WordPress : Ajout d’un attribut de titre à la catégorie sans affecter le noyau

Publié par Jean-Michel le

Ma configuration actuelle comprend la catégorie de chaque message. Mais chaque fois que je passe la souris sur la catégorie, le message par défaut Show all posts in [category].

J’ai regardé autour de moi et j’ai vu des questions assez similaires qui nécessitent plusieurs lignes de code php. Cela ne peut sûrement pas être si compliqué. Existe-t-il un moyen de modifier ce qui suit pour qu’il fasse ce que je veux?

<?php the_category(' '); ?>

C’est le code qui renvoie ce qui précède. Je regarde à travers le codex et j’ai trouvé category_description()et get_the_category(). Je suis un peu nouveau dans les tableaux et j’ai du mal à les comprendre. J’espérais en quelque sorte que quelque chose comme ça fonctionnerait:

<?php the_category('title=category_description()'); ?>

mais ce n’est pas. Je sais que c’est une façon assez hilarante de résoudre ce problème pour la plupart d’entre vous, mais je suis complètement perdu. Je veux juste que la description de la catégorie soit l’attribut de titre. Existe-t-il un moyen simple de le faire ?

Solution n°1 trouvée

codex wordpress

en utilisant get_the_category(); vous pouvez enregistrer toutes les catégories dans une variable. Ex:

$categories = get_the_categories();

Il existe cependant un paramètre facultatif que vous pouvez passer ; l’identifiant de la catégorie. Ex:

$categories = get_the_categories(THE_CATEGORY_ID);

Que vous présentiez ou non un identifiant de catégorie, vous devez exécuter $categories dans une boucle. Ex:

foreach($categories as $category){

}

Ce n’est qu’alors que vous pourrez personnaliser votre attribut de titre sans modifier le code wordpress. Ex:

foreach($categories as $category){
    echo '<a href="'.get_category_link($category->term_id ).'" title="'.YOUR_CUSTOM_TITLE.'">'.$category->cat_name.'</a>';
}
Catégories : Wordpress

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *