Widgetiser ma sidebar (Créer un compte)

  • Statut : non résolu
  • Ce sujet contient 7 réponses, 4 participants et a été mis à jour pour la dernière fois par rdelval, le il y a 15 années.
8 sujets de 1 à 8 (sur un total de 8)
  • Auteur
    Messages
  • #475866
    rdelval
    Membre
    Initié WordPress
    10 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : 2.8.5
    – Thème utilisé : le mien
    – Extensions en place : aucune
    – Nom de l’hebergeur : hebergement local
    – Adresse du site :

    Problème(s) rencontré(s) : la widgetisation de la sidebar ne fonctionne pas

    Bonjour à tous,

    je suis actuellement entrain de créer mon propre template, et j’essaye de rendre ma sidebar « widget-ready »

    pour cela j’ai suivis plein de tuto/articles trouvés sur le web qui sont tous quasiment identique. mais malgré cela rien ne fonctionne.

    pour faire simple voila le contenu de mon fichier « function.php » qui se trouve dans mon wp_content/themes/mon-theme

    <?php
    if ( function_exists('register_sidebar') )
    register_sidebar();
    ?>

    puis mon fichier sidebar.php (situé au même endroit)

    <div id="sidebar">
    <ul>
    <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>

    <li>a</li>
    <li>b</li>

    <?php endif; ?>
    </ul>
    </div>

    le contenu de ces deux fichiers me semble correcte et pourtant quand je vais dans mon interface admin sur apparence/widgets, j’obtient ce message d’erreur :

    Aucune barre latérale définie

    Le thème que vous utilisez n’est pas conçu pour les widgets, ce qui signifie qu’il ne dispose pas d’une barre latérale que vous pouvez modifier. Pour obtenir des informations sur la manière de rendre votre thème compatible avec les widgets, lisez ces instructions (en anglais).

    est ce que j’aurai loupé une étape ou coder quelque chose de mauvais qui m’empecherai de rendre ma sidebar widget-ready

    j’avais lu qu’il y avait avant un plugin pour utiliser les widget mais cela correspond bien au wordpress <= 2.6 ? donc je n'ai rien a installer en plus niveau plugin ? merci d’avance pour votre aide

    #699548
    rdelval
    Membre
    Initié WordPress
    10 contributions

    personne n’a d’idée pour ce problème de widget ?

    car j’ai vraiment l’impression de louper quelque chose mais quoi, là je ne voit pas

    #699549
    chamomor
    Participant
    Maître WordPress
    1912 contributions

    Ton code n’est pas complet
    Dans functions.php :

    if ( function_exists(‘register_sidebar’) )
    register_sidebars(1, array(
    ‘before_widget’ => ‘<div id="%1$s" class="widget %2$s">‘,
    ‘after_widget’ => ‘</div>‘,
    ‘before_title’ => ‘<h3>‘,
    ‘after_title’ => ‘</h3>‘,
    ));

    et dans ta sidebar:

    Mais si tu veux des widgets, faut les coder…
    Par exemple:

    <div id="dynamic_sidebars">
    <div class="dynamic_widget">

    <h2>Calendar</h2>

    <h2>Recent Entries</h2>
    <ul class="arrow">

    </ul>
    <h2>Recent Comments</h2>
    <ul class="arrow">



    <?php mw_recent_comments(10, false, 50, 50, 35, 'all', '<li><a href="%permalink%" title="%title%"><font color="#AB3622">%date%</font> | %author_name% in %title%</a></li>‘,’d.m’); ?>

    </ul>
    <h2>Rss</h2>
    <ul class="arrow">
    <li><a href=" » title= » »>Main Entries RSS</a></li>
    <li><a href=" » title= » »>

    </a></li>
    </ul>
    <h2>Meta</h2>
    <ul class="arrow">

    <li>

    </li>
    <li><a href="http://validator.w3.org/check?uri=referer">Valid XHTML</a></li>
    <li><a href="http://wordpress.org/" title="Powered by WordPress, state-of-the-art semantic personal publishing platform.">WordPress</a></li>

    </ul>


    <h2>Categories</h2>
    <ul class="arrow">

    </ul>
    <h2>Archives</h2>
    <ul class="arrow">

    </ul>
    <h2>Blogroll</h2>
    <ul class="arrow">
    <?php get_links(-1, '<li>‘, ‘</li>‘, ‘ – ‘); ?>
    </ul>

    #699550
    rdelval
    Membre
    Initié WordPress
    10 contributions

    hum coder les widget …

    le but de rendre une sidebar « widget ready » comme on dit, cela permet justement de passer par le panneau d’administration >apparence > widget

    et on sélectionne les widget que l’on souhaite utiliser en faisant un glisser déposé ?

    si il faut commencer a coder soit même chaque widget présent dans la sidebar, je ne voit pas a quoi sert ce menu dans le panneau d’admin ou alors j’ai rien compris alors ?

    Dans ce cas peut être que je recherche dans le mauvais sens

    j’ai eu un thème ou en allant dans panneau admin > apparence > widget je pouvait sélectionner les widget que je souhaitais voir dans ma sidebar

    je n’avait alors aucun code a rajouter dans le sidebar.php de ce thème.

    or moi dans le template que je crée si je vais dans ce menu widget, je me retrouve avec le message d’erreur spécifié dans le premier post.

    comment faire pour que ce menu apparaisse ? (le code ajouter ci-dessus ne change rien)

    merci pour votre aide.

    #699551
    viwiv
    Membre
    Maître WordPress
    809 contributions

    Bonsoir,

    Tu devrais suivre les explications du Châmö qui est vivant… Ajouter à functions.php le code indiqué. Déclarer enfin, ta barre latérale avec les premières lignes de son code.

    Après, le code donné par Châmô est destiné à personnaliser les Widgets ou à les afficher à un endroit déterminé, mais tu peux t’en passer. Ensuite, je te confirme, tu as bien compris : tu peux les glisser-déposer à volonté.

    Cordialement,

    V.

    #699552
    rdelval
    Membre
    Initié WordPress
    10 contributions

    justement j’ai repris ce bout de code mais cela ne change rien à mon soucis.

    j’ai donc déclaré dans mon fonction.php ce qui a été corrigé plus haut.

    j’ai ensuite déclaré ma sidebar, toujours avec le code fourni par chamomor

    Donc avec cela, ok dans ma sidebar ce qui est déclaré en dur dans le code de cette sidebar s’affiche (jusque là je savais le faire)

    mais l’erreur qui reste est que si je vais dans mon panneau d’administration > apparence > widget

    au lieu de m’afficher la liste des widget disponible dans cette page du panneau d’administration (pour effectuer le glisser déposer), j’ai à la place un message d’erreur suivant

    Aucune barre latérale définie

    Le thème que vous utilisez n’est pas conçu pour les widgets, ce qui signifie qu’il ne dispose pas d’une barre latérale que vous pouvez modifier. Pour obtenir des informations sur la manière de rendre votre thème compatible avec les widgets, lisez ces instructions (en anglais).

    a part déclarer ma sidebar comme dit plus haut, déclarer mon function.php comme dit plus haut je doit encore manquer quelque chose car peu importe mes changement je n’ai jamais accès aux widget

    voila pour preuve le message que j’obtiens malgré les modifications apportées

    http://img695.imageshack.us/img695/6194/erroro.jpg

    alors que je devrai avoir ceci :
    http://img696.imageshack.us/img696/5402/error2j.jpg

    encore merci pour votre aide

    ce n’ai pas très important si les widget en fonctionne pas, mais mon soucis du détails m’empêche de ne pas prendre en considération ce problème, et encore plus si je suis amené a rendre disponible ce thème pour d’autre internaute qui eux aurai besoin de ces widget. 🙂

    #699553
    Dric
    Participant
    Maître WordPress
    757 contributions

    Alors pour mon thème (c’est un exemple mais il marche), dans functions.php :

    if ( function_exists(‘register_sidebar’) )
    register_sidebar(array(
    ‘before_widget’ => ‘<li id="%1$s" class="widget %2$s">‘,
    ‘after_widget’ => ‘</li>‘,
    ‘before_title’ => ‘<h5 class="widgettitle">‘,
    ‘after_title’ => ‘</h5>‘,
    ));

    Dans sidebar.php :


    <li><h5>Widget Ready</h5></li>

    #699554
    rdelval
    Membre
    Initié WordPress
    10 contributions

    J’allais écrire une tartine de texte encore

    mais j’ai eu un doute d’un coup

    je me disait bien que le problème ne devait pas venir du contenu des fichiers puisqu’ils semblaient correspondre aux votre

    et bien la réponse est simple

    Le contenu est bon mais pas le NOM

    fiouuu en relisant au bout de trois fois votre derniers messages j’ai trouvé la solution

    c’est functionS.php , pluriel et pas singulier

    rhaaaaaaaa saleté de fichier !!!

    Merci à vous pour votre aide, je vais pouvoir garder le reste des cheveux que je ne me suis pas arraché grâce à vous

    ca fonctionne au poil maintenant 🙂

8 sujets de 1 à 8 (sur un total de 8)
  • Vous devez être connecté pour répondre à ce sujet.