Collez le code suivant dans le fichier functions.php du thème de votre blog WordPress afin de rajouter un widget qui vous permettra d'afficher une liste des catégories de votre blog, avec un lien vers les catégories, mais en supprimant les catégories que vous ne souhaitez pas voir apparaître.

Ceci en ajoutant les catégories indésirables en paramètre de la fonction wp_list_categories

wp_list_categories("orderby=name&exclude=25,24,26&title_li=")

title_li= permet de ne pas afficher le titre par défaut de la liste aposé par la fonction wp_list_categories

Après ajout de ce code dans votre fichier functions.php, allez dans votre administration WordPress > Apparence>Widget et vous allez voir apparaître l'item "Catégories spécifiques" que vous pourrez ajouter à l'emplacement de votre choix offert par votre thème.

<?php
/** Début Widget pour afficher une liste des catégories de votre blog WordPress grâce à wp_list_categories en enlevant certaines catégories indésirables***/

class WidgetSelectionCategories extends WP_Widget {
    function WidgetSelectionCategories()
    {
     $options = array(
         "classname" => "widget-sel-categorie",
         "description" => "Liste de cat&eacute;gories  sp&eacute;cifiques"
        );
     $this->WP_widget("widget-sel-categorie", "Cat&eacute;gories sp&eacute;cifiques", $options);
    }

    function widget($args, $instance)
    {    
       extract($args);
       $title =  $titlePost;        
       echo $before_widget;
       echo '<div id="widget_cat_sel">';
         if ($title)
           echo '<div class="">'. $title .'</div>';
         else
           echo $before_title . 'Les cat&eacute;gories sp&eacute;cifiques' . $after_title;             
         wp_list_categories("orderby=name&exclude=25,24,26&title_li="); // Ici j'exclue les catégories d'id 24, 25 et 26                            
       echo '</div>';
       echo $after_widget;    
    }

    function update($new_instance, $old_instance)
    {
        $instance = $old_instance;
        $instance['title'] = strip_tags($new_instance['title']);   
        return $instance;
    }

    function form($instance)
    {
        $title = esc_attr($instance['title']);      
    ?>
        <p>
            <label for="<?php echo $this->get_field_id('title'); ?>">
                <?php echo 'Titre:'; ?>
                <input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" />
            </label>
        </p>       
    <?php
    }
}

function AjoutWidgetSelectionCategories() {
    register_widget('WidgetSelectionCategories' );
}
add_action('widgets_init', 'AjoutWidgetSelectionCategories');

/** fin ajout widget ***/
?>

 

0 réponses

Laisser un commentaire

Participez-vous à la discussion?
N'hésitez pas à contribuer!

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.