WordPress : Les widgets ne s’affichent pas dans les barres latérales

Publié par Jean-Michel le

J’ai enregistré deux barres latérales dans mon thème en utilisant la fonction ci-dessous, mais aucun des widgets n’apparaît dans les barres latérales même si je peux les gérer dans le tableau de bord :

// register sidebars
add_action( 'widgets_init', 'my_register_sidebars' );
function my_register_sidebars() {

    register_sidebar(
        array(
            'id' => 'sidebar-left',
            'name' => __( 'sidebar-left' ),
            'description' => __( 'A short description of the sidebar.' ),
            'before_widget' => '<div id="%1$s" class="widget %2$s">',
            'after_widget' => '</div>',
            'before_title' => '<h2 class="sidebar-title">',
            'after_title' => '</h2>'
        )
    );

        register_sidebar(
        array(
            'id' => 'sidebar-right',
            'name' => __( 'sidebar-right' ),
            'description' => __( 'A short description of the sidebar.' ),
            'before_widget' => '<div id="%1$s" class="widget %2$s">',
            'after_widget' => '</div>',
            'before_title' => '<h2 class="sidebar-title">',
            'after_title' => '</h2>'
        )
    );
}

et pour appeler le fichier de modèle, c’est comme ça

<div id="sidebar-left" >

    <?php if ( is_active_sidebar( 'left' ) ) : ?>

        <?php dynamic_sidebar( 'left' ); ?>

    <?php else : ?>

        <p> here should be a left sidebar</p>

    <?php endif; ?>

</div>

Le paragraphe s’affiche, mais pas les widgets. Aucune suggestion?

Lire également:  Wordpress : Je ne parviens pas à publier/mettre à jour l'article

Solution n°1 trouvée

Vous avez enregistré vos barres latérales avec le ids de sidebar-leftet sidebar-rightmais vous essayez de les afficher en utilisant uniquement leftet right. Vous devez utiliser le bon ids. C’est-à-dire:

dynamic_sidebar( 'sidebar-left' );

Vous en avez besoin idavec dynamic_sidebar()etis_active_sidebar()

if ( is_active_sidebar( 'sidebar-left' ) ) {
  dynamic_sidebar( 'sidebar-left' );
} else { ?>
  <p> here should be a left sidebar</p><?php 
}
Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

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