Création Thème Wordpress | Tutorial #13: Widgetisez votre sidebar pour Wordpress 2.2

Ce tutoriel est le treizième d’une série d’articles sur la création d’un thème pour Wordpress de A à Z. Si vous prenez le train en cours et si vous souhaitez créer votre propre thème de A à Z, je vous conseille fortement de commencer par le premier tutoriel de la série. Si vous souhaitez uniquement mettre votre thème aux normes de Wordpress 2.2, ce tutoriel sera parfait pour vous aider !!

Avec l’arrivée de la version 2.2 de Wordpress, arrive aussi “en série” les Sidebar Widgets. Les Sidebar Widgets vous permettent de modifier votre sidebar comme vous le souhaitez, sans avoir à toucher au code dans les templates. Mais rapidement, un problème se pose: tous les thèmes ne sont pas “widget ready”. Alors que vous ayez un de ces thèmes qui ne supporte pas les widgets ou que vous avez vous-même créé votre thème et que vous aimeriez le widgetiser, je vais vous expliquer la marche à suivre.

1. Création du template functions.php

Pour commencer, vous allez devoir créer un nouveau fichier, sous le dossier de votre thème. Ce fichier s’appelle functions.php. Dans ce template, vous allez y ajouter le code suivant:

1
2
3
4
<?php
if ( function_exists('register_sidebar') )
register_sidebar();
?>

Si vous avez plus d’une colonne dans votre sidebar, entrez le chiffre correspondant au nombre de colonnes dans la dernière ligne de php. Par exemple, si vous avez deux colonnes, vous devez avoir le code suivant:

1
2
3
4
<?php
if ( function_exists('register_sidebar') )
register_sidebar(2);
?>

Enregistrez votre fichier et fermez-le. Vous n’en aurez plus besoin.

2. Modifications du template sidebar.php

Maintenant, nous allons ajouter quelques lignes de code dans le template sidebar.php pour permettre aux widgets de s’afficher correctement. Placez la ligne de code suivante directement sous l’”ouverture” de la liste de la sidebar, sous la balise UL:

1
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>

Comme c’est une requête php “if”, il nous faut refermer cette requête par une “endif”. Pour cela, juste avant la balise UL qui referme la liste de la sidebar, ajoutez la ligne de code suivante:

1
<?php endif; ?>

Ca devrait donner quelque chose comme ça:

1
2
3
4
5
6
7
<ul>
<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar() ) : ?>
 
CONTENU DE LA SIDEBAR
 
<?php endif; ?>
</ul>

Enregistrez votre fichier. Allez maintenant dans l’administration de votre blog et vous devriez voir apparaître l’onglet pour gérer les widgets ! Vous pouvez maintenant bouger chaque module de votre sidebar comme vous le souhaitez ! Quoi qu’il en soit, il faut savoir qu’utiliser les Sidebar Widgets va “supprimer” de votre sidebar tout ce qui y était auparavant. Je dis “supprimer” mais ce n’est pas totalement vrai. Vos infos sont toujours stockés dans le fichier sidebar.php mais n’apparaîtront plus sur l’écran. Wordpress passera désormais uniquement par les Sidebar Widgets pour l’affichage de la sidebar. Tenez compte aussi du fait qu’un certain nombre de plugins ne sont pas encore disponibles en widgets. Si vous les utilisez aujourd’hui, vous ne pourrez peut-être plus le faire avec les widgets !

Pour plus d’informations sur l’utilisation des widgets dans votre sidebar, n’hésitez pas à aller voir sur ce site, tout y est clairement expliqué !

Et si vous avez 2 ou plus de colonnes dans votre sidebar, je vous conseille cet excellent article de Br1o. Je vous préviens que c’est assez technique alors n’hésitez pas à poser vos questions ici ou chez lui s’il y a quelque chose que vous ne comprenez pas ! ;-)

Tutoriel n°14: “le footer”

Fran6

122 Commentaires pour “Création Thème Wordpress | Tutorial #13: Widgetisez votre sidebar pour Wordpress 2.2”


  1. 1

    Salut Fran6,

    J’ai essayé et suivi aux pieds de la lettre des instructions mais en vain. Dans l’admin aucun onglet “Widget” est apparu ?

    Est-ce que tu peux m’aider et surtout voir si mon thème est compatible avec ton Super Truc ? Merci Fran6

  2. 2

    C’est quoi ton thème ? Un standard ou un que tu as créé toi-même ? Envoies-moi le tout par email (fran6art(at)gmail.com) et je regarde ça dans la journée ! ;-)

  3. 3

    oops ! faut départ, j’avais pas fait attention à ce qu’il y avait avant le suite et fin de l’aant dernier tutorial :p
    le post à été remis au placard en attendant de le sortir le jour J
    Faut vraiement que je fasse attention avant de poster n’importe quoi ;)
    Alors ces vacances ?

  4. 4

    Pas de soucis Amine !! ;-) Quelques jours de vacances sympa en famille dans les Alpes Suisses….

  5. 5

    trés bon tuto ca fonctionne parfaitement. en revanche je necomprend paspourquoi le premier élément de ma sidebar est a droite et éclaté ? any ideas ?

    merci

  6. 6

    Salut Jean-Laurent, je viens de passer sur ton blog et je n’ai rien vu ;-) Tu peux le remettre pour voir ou m’envoyer une copie d’écran ? Tu as essayé de le placer ailleurs dans la sidebar pour voir ?

  7. 7

    J’ai solutionné le soucis, j’avais palcé le code avant le div…..boulet que je suis !

  8. 8

    Muy bien !! ;-)

  9. 9

    Salut Francis
    Merci beaucoup pour ces tutos pour Wordpress.
    Pour ma part je les trouve clairs et bien expliqués.
    En tous cas vive la suite…

  10. 10

    Merci Seb pour ton soutien ! ;-)

  11. 11

    Hello francis,
    J’ai tout de meme un petit soucis avec mon template, jusque là tout marchait bien mais je ne vois pas d’onglet widget dans l’admin. J’ai tout lu et relu mais je ne m’en sors pas, as-tu une idée ?
    Voici un lien vers mes fichiers : http://www.artoria.net/creationTheme.zip

  12. 12

    C’est bon j’ai trouvé l’onglet widget … ;)
    Merci pour la série de tutoriels … c’est génial pour un designer qui n’y connait rien ;)
    Merci merci merci

  13. 13

    De rien Ricain !! ;-)

  14. 14

    Hello Fran6,
    Jusqu’ici …” Tout va bien”, par contre , dans l’onglet Widgets, je n’arrive pas à déplacer les Widgets disponibles dans Colonne latérale par défaut (je les “glisse”, mais ils ne se “déposent” pas )
    ??? As tu une piste ???
    Mer6 d’avance.

    Mickael G , le 2 juin 2007 à 22:26
  15. 15

    Hum, j’ai ceci comme erreur…

    Warning: Cannot modify header information – headers already sent by (output started at C:\xampplite\htdocs\wordpress\wp-content\themes\Fred\functions.php:11) in C:\xampplite\htdocs\wordpress\wp-includes\pluggable.php on line 329

    http://www.fredwashere.com/div/Fred.rar

    Si quelqu’un peut m’aider… Je dois avoir laissé traîner une crasse quelque part, mais je n’arrive pas à voir où :(

    Thx

    Fred

  16. 16

    Mickael G > Je pense que c’est uniquement dû à un problème de syntaxe, à moins que tu es plus d’une colonne à ta sidebar.

    Fred > J’ai testé ton thème che moi en local et ça fonctionne très bien… Tout est bien codé… Réessaies pour voir…

  17. 17

    Hello Fran6
    Tu as vu juste… 1 sidebar donc : register_sidebar();
    et non : register_sidebar(1);
    Voila ca qui arrive quand on n’écoute pas ;-)

    Mickael G , le 4 juin 2007 à 19:00
  18. 18

    Fran6 Merci.

    Je vais refaire l’installation de wordpress en local et voir ce que cela donne.

  19. 19

    bonsoir, suis tombé sur ton tutoriel super efficace…mais suis incapable de personaliser en DEUX colones mes widgets…y’a un truc que je comprends pas…si tu peux m’aider…reconnaissance éternelle !!!

  20. 20

    entropik > Effectivement, c’est plus compliqué quand on a 2 colonnes. Je vais modifier le tutoriel dans la journée avec un lien vers un article qui présente la solution pour 2 colonnes et plus. Je te tiens au courant par email, ok ?

  21. 21

    MERCI!!! j’ai bien activé la double fonction des widgets (register_sidebar(2);) amis c’est l’affichage dans la sidebar qui coince…et tu as peut être vu que j’ai placé ma sidebar…en footer…histoire de prévilégier l’image dans mon template…merci pour tes infos par avance!

  22. 22

    C’est bon entropik, j’ai modifié l’article (dernières lignes) et y ai ajouté le lien vers l’article en question… a

  23. 23

    J’ai le même probleme que Fred. Le blog s’affiche et impossible de se logger.

  24. 24

    raindrop > Tu entends quoi par “impossible de se logger” ?

  25. 25

    salut,
    quand je consulte simplement le blog, il s’affiche correctement.
    quand je passe en mode admin, j’ai des msg d’erreur du type de fred sur la page de connexion admin. Quand je fais fis de ces msgs et que je tente quand même d’entre mes user et pwd, j’ai d’autres msg d’erreur.

    J’espère que c’est plus compréhensible.

  26. 26

    raindrop > J’ai l’impression que le problème provient plus de la base de données que du thème… Tu peux laisser en commentaire les messages d’erreur que tu as ? Essaies de te logger en utilisant un autre thème pour voir…

  27. 27

    merci pour ta réponse rapide.

    Ce sont des erreurs de ce genre là:
    [...] C:\xampplite\htdocs\wordpressfr\wp-content\themes\creation theme\functions.php [...]

    Je retenterai ce soir (chui au taff, là) et le cas écéhance collerai les msg d’erreur.
    bonne journée.

  28. 28

    Alors,
    j’ai effacé mon dossier wordpressfr.
    J’ai purgé la base de données sous http://localhost/phpmyadmin/
    j’ai recommencé à partir du milieu du tuto 1.

    Et je ne reproduis plus mon bug.

    L’informatique n’est pas une science exacte.
    bonne continuation.

  29. 29

    bon ben voilà, je reproduis:

    voici mon wp-config (edité selon l’install windows):

    // ** reglages MySQL ** //
    define(’DB_NAME’, ‘wordpress’); // Le nom de la base de donnees
    define(’DB_USER’, ‘root’); // Votre identifiant MySQL
    define(’DB_PASSWORD’, ”); // …et votre mot de passe
    define(’DB_HOST’, ‘localhost’);

    quand je vais à : http://localhost/wordpressfr/wp-login.php

    j’obtiens:

    Warning: Cannot modify header information – headers already sent by (output started at C:\xampp\htdocs\wordpressfr\wp-content\themes\creation theme\functions.php:2) in C:\xampp\htdocs\wordpressfr\wp-login.php on line 12

    Warning: Cannot modify header information – headers already sent by (output started at C:\xampp\htdocs\wordpressfr\wp-content\themes\creation theme\functions.php:2) in C:\xampp\htdocs\wordpressfr\wp-includes\pluggable.php on line 331

    autrement à http://localhost/wordpressfr/
    le blog s’affiche correctement.

  30. 30

    oué ben nan.

    après l’install j’avais accès à tout mais quand je quitte tout et que je reviens en admin, même topo.

    modification du header impossible etc.
    (j’avais tapé un comm hier mais il a disparu, j’avais collé les msg d’erreur…)

  31. 31

    Non non raindrop, rien n’est perdu. Il était juste en attente de modération. Perso, je pense que ça vient d’une erreur de code quelque part ou alors de l’installation en local… T’as donné ton code à valider sur w3c pour voir s’il y a des erreurs. Tu peux aussi utiliser Firebug, l’extension de Firefox…

  32. 32

    hello,
    j’ai effectivement donné mon code à valider sur w3c.
    Obtenant 7 erreurs, j’ai donc utilisé le index.php que tu mettais à disposition: j’en obtenais plus que 6.

    Faut-il nécessairement avoir 0 erreur?

    Je vais vérifier lequel j’utilise, ce soir.

    ce sera mon dernier recours avant de sombrer dans l’alcool. XD

  33. 33

    raindrop > Ca dépend des erreurs… Mais normalement, tu ne devrais en avoir aucune. Ces erreurs peuvent être à l’origine de tes soucis et aussi tu risques d’en avoir d’autres par la suite avec les CSS…

  34. 34

    Salut Fran6,

    Parti de zéro, j’ai suivi tes tutoriels et réussi à customiser un blog en local qui me satisfait bien.
    Avant de le mettre en ligne, j’ai un dernier truc à régler :

    Les articles de mon blog étant classés par catégories, je ne sais pas comment faire pour afficher des liens spécifiques à chaque catégorie dans un widget texte de la sidebar.

    exemple :

    - Pour tous mes articles classés dans la catégorie “tarte aux pruneaux”
    > Afficher des liens sur les pruneaux dans le widget texte de la sidebar

    - Pour tous mes articles classés dans la catégorie “Crumble aux pommes”
    > Afficher des liens sur les pommes dans le widget texte de la sidebar

    Ma configuration WP actuelle
    - Version de WordPress : 2,2,1
    - Thème utilisé : Cutline 3-Column Split 1.1 (css trafiqués)
    - Plugins en place : 0
    - Hébergé en local sur MAMP

    Comment faire ? Si tu as un tuyau…

    vol_max

    vol_max , le 21 août 2007 à 8:09
  35. 35

    raindrop est de retour.

    ban, comme l’activité aoutiste est au ralenti, j’ai pu faire les tuto au taff et t: ça fonctionne.

    seules différences:
    - j’ai installé la version lite de xamp (mais bon ça m’étonnerait que mon pb vienne de ça)
    - j’ai skippé toutes tes explications qui ont peut être contribuer à me faire perdre la vue globale du projet précédemment

    torché en 3 heures.

  36. 36

    Recoucou francis …

    J’ai un probleme, lorsque je vais dans le panneau de personalisation des WIDGETS je peu les bougers mais je ne peu pas personalisé le contenu par exemple ( de plus il me laisse une boite avec DEFAUT SIDEBAR et les explications de notés…)

    As tu une idée … j’ai verifié le code et tout me semble correct

    J’ai la version 2..2.1 de WP

  37. 37

    Ca va j’ai trouvé, j’avai mit un commentaire dans FUNCTION.PHP et cela fesait tout deconner

    MErci encore

  38. 38

    vol_max > Je crois qu’il y a un plugin qui fait ça… va donc faire un tour du côté des plugins Wordpress, tu trouveras sûrement ton bonheur ! ;-)

  39. 39

    Bonjour,

    J’ai un petit souci au niveau des widgets et peut être que quelqu’un ici pourrait m’aider. J’ai laissé un message sur le support Wordpress mais je n’ai pour l’instant aucune réponse. Je vois met le lien pour éviter de surcharger ce commentaire : http://www.wordpress-fr.net/su.....odelicious

    En gros je n’ai pas d’onglet widget qui apparait dans l’admin lors de l’utilisation de ce thème et je ne vois pas ce que je dois modifier pour ça.

    Merci d’avance pour vos réponses :)

  40. 40

    Ok j’ai suivi jusqu’à maintenant.

    J’ai bien l’onglet pour gérer les widgets, mais en haut, j’ai ce message d’erreur :

    Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /opt/lampp/htdocs/Sites/wordpress/wp-includes/widgets.php on line 53

    C’est sur un serveur de test en local.

    Sinon, bravo, je cherchai cela depuis un moment, cela va grandement me faciliter la tache.

  41. 41

    Fulcanelli > Tu utilises quelle version de WP ?

  42. 42

    Bonjour,
    J’ai suivi depuis le début les tutos pour apprendre à créer son propre thème. Bravo pour le travail.
    En revanche, une question. Concernant le fameux onglet widget qui est censé apparaitre. Celui ci n’apparait pas, ou du moins je ne le trouve pas. Je ne suis pas le premier à rencontrer ce problème de ce que je lis dans les commentaires. Certains ont trouvé… mais personne n’a donné la réponse.
    Serait il possible de m’envoyer par mail ou il se trouve et/ou la solution pour l’afficher ET l’indiquer dans la suite des commentaires pour les suivants ;-)
    Merci

    Emmanuel , le 19 nov 2007 à 0:22
  43. 43

    Bonjour,

    J’ai réussi à régler ce problème en faisant une mise à jour de Wordpress (2.3.1 au lieu de 2.2 où j’avais l’erreur), depuis plus de soucis, l’onglet widget apparait bien. Le seul truc que je n’ai pas compris, c’est que j’utilise une version 2.2 sur un autre blog et j’avais bien cet onglet…

  44. 44

    Bonsoir,
    J’arrive bien tard, mais après avoir galéré pour ajouter une deuxième sidebar (comme d’autres ici), je me suis aperçu d’une erreur toute simple dans le code fourni plus haut : s’il y a plusieurs colonnes latérales il faut mettre sidebar au pluriel donc sidebars ce qui donne :

    Voilà mon humble contribution après des heures de difficulté (je suis un grand débutant).
    En tous cas, grand merci à Francis pour ces tutoriels si lumineux dans leur exposition.
    Bonne année à tous.

  45. 45

    moi qui cherchais de la matière diantre pour le coup j’en ai trouvé.

    Merci de tout ce travail !

    Allez zou au taf :P

  46. 46

    Bonjour Fran6

    J’ai exactement le même problème que raindrop et fred

    des messages d’erreurs du type : “Warning: Cannot modify header information – headers already sent by (output started at…”

    Ces messages ont lieu dès que j’essaye d’acceder à la base de donnée. et pourtant, le premier article se charge. Notons également qu’en local, il n’y a aucun problème.

    Avec les autre thèmes il n’y a aucun soucis.

    Je me demandais comment Fred et et Raindrop avaient solutionné leur problème ?

    Sushi_destroy , le 29 jan 2008 à 21:24
  47. 47

    Fichier sidebar.php VIDE .. Je commence par quoi avant d’insérer les lignes de code que tu recommandes ici ?
    J’ai le theme PhotoWP qui n’est pas widget compatible et j’essaye donc d’y inserer une sidebar . Il y a un fichier modifiable appelé sidebar.php mais quand je suis dans l’admin WP et que je l’édite il est vide et je ne sais pas par quoi commencer pour bien le coder… Any tips ?

    cecilaki , le 23 fév 2008 à 0:50
  48. 48

    Salut Francis!

    Moi aussi j’ai le même problème que Sushi et Fred… ^^

    Apparemment le problème vient du fichier functions.php…

    En fait, le jour ou j’ai créé ce template, puis actualisé ma page, tout marchait très bien. C’est seulement après fermé le tout, puis repris mon boulot le lendemain que tout a foiré.

    Donc j’ai 3 erreurs de ce type… Pourtant je n’ai fait aucune erreur au niveau du code. Je suis allé voir dans les .php les lignes à problème, en vain…

    Plz help!

    Et merci pour les tutos!

    Sushi fait tourner si tu trouves la réponse svp! Bye

    Orangebudd , le 3 mar 2008 à 0:32
  49. 49

    Orangebudd > Tu bosses en local ?

  50. 50

    j’ai solutionné le problème sans vraiment m’en rendre compte. A un moment pouf ça marchait.

    d’après ce que j’ai compris, ça ne fonctionnait plus dès que function.php était en UTF 8. donc je l’ai mis en ANSI (j’ai pas touché aux autres fichiers php qui sont restés en UTF8) et depuis ca marche nickel.

    Le pourquoi du comment me passe complètement au dessus de la tête (si ça se trouve ça à rien à voir)…

    voilà c’est tout ce que je peux dire

  51. 51

    Personnellement, j’ai entendu pas mal de monde avoir des soucis avec le fichier functions.php, moi-même d’ailleurs et pour m’être renseigné ici et là, pas vraiment de réponse édifiante…

  52. 52

    Bon bah je vais tester ta solution Sushi.

    Sinon Fran6, oui je suis en local! :-)

    Merci a vous deux, je vais voir ce que ca donne!

    Orangebudd , le 4 mar 2008 à 13:13
  53. 53

    Bonjour bonjour ^^

    comme beaucoup de personnes je me fait un petit chemin dans ce tutorial que je trouve très bien.

    Voila donc j’ai un problème avec l’onglet widget (Surprise !) j’ai bien mon onglet widget (dans la rubrique thème c’est bien celà?) mais quand je clique dessus, il m’affiche le message suivant :

    Aucune barre latérale définie.
    Vous lisez ce message parce que le thème que vous utilisez n’est pas conçu pour les widgets, ce qui signifie que vous ne pouvez pas modifier sa barre latérale. Pour obtenir des informations sur la manière de rendre votre thème compatible avec les widgets, lisez ces informations (en anglais).

    Voila, j’espère que je ne poste pas ce message trop tard ^^

    en espérant une réponse, bonne continuation ! ;D

    hanjy , le 16 mar 2008 à 8:51
  54. 54

    Bonjour,
    J’avais déjà parcouru cet excellent tuto, et j’ai décidé de changer mon thème pour passer à du 2 colonnes. C’est ainsi que j’ai trouvé une petite erreur :

    est faux et devrait être remplacé par :

    Avec un “S”… aussi bizarre que cela puisse paraître.

    @hanjy : as-tu bien nommé et placé ton fichier functions.php ? (je dis ça parce que ça me l’a fait ;-) )

  55. 55

    oups la boulette… désolé.

    ”register_sidebar(2);”
    est faux et devrait être remplacé par :
    ”register_sidebars(2);”

    (j’avais laissé les balises php dans mon précédent commentaire)

  56. 56

    Oui “sidebars” avec un “s” quand il y en a plus d’une il faut employer le pluriel : logique (je l’avais signalé plus haut après avoir longtemps galèré).

  57. 57

    Effectivement, il faut mettre un S quand on a 2 sidebars, mais dans ce tuto je ne parlais que d’un exemple avec une sidebar, alors… ;-) Par contre, vous êtes allés voir sur l’article que je mentionne à la fin du tuto pour les X sidebars ?

  58. 58

    Oui, je suis aller lire l’article en question qui est vraiment complet (il est d’ailleurs désormais dans mes signets).

    Mais pour être honnête, comme je cherchais avant tout une méthode simplifiée pour cette fois-ci, j’ai surtout trouvé la réponse en quelques mots dans l’autre article d’automattic.com :

    ”I have a theme with more than one sidebar. How do I make them all dynamic ?”
    ”Oh, that’s easy. Instead of register_sidebar() you should use register_sidebars(n) where n is the number of sidebars. Then place the appropriate number in the dynamic_sidebar() function, starting with 1.”

    @Monachus : pas si logique que ça je trouve, puisque ça fait appeler une fonction php différente et qu’on a pas souvent l’habitude d’accorder les fonctions… Mais bon, c’est le coup de trouver. ;-)

  59. 59

    salut à tous!
    I send an SOS!!!
    Bon jusqu’ici tout allait bien et puis je bloque sur cette leçon.
    J’utilise WordPress 2.5 et mon problème est que le contenu de ma sidebar n’a pas disparu de l’écran.
    Dans l’admin j’ai bien la gestion des widgets.

    Où est ce que je me suis planté ?

    fabien , le 4 avr 2008 à 15:57
  60. 60

    merci, je cherchais justement cela dans les pages precedentes, ca tombe donc a pic!

  61. 61

    Salut!

    Super le tuto, clair et digeste. Je viens de Joomla… donc les css ne me font pas souci, mais heureusement qu’il y a des tutos comme celui-là pour accéder à un “squelette” de blog! Donc merci.

    Ma question:

    Après avoir ajouté le code pour le système de widget dans la sidebar, j’ai cette ligne qui apparaît au sommet de ma page d’administation:

    Warning: array_merge() [function.array-merge]: Argument #2 is not an array in /home/httpd/vhosts/passagealest.ch/subdomains/pascal/httpdocs/wp-includes/widgets.php on line 60

    Je comprends pas!

    Je suis sur Wordpress 2.5.1.

    Merci pour le coup de main. A+

  62. 62

    Encore une chose… j’ai des points d’interrogationst (sous Firefox) ou des carrés avec un point d’interrogation dedans (sous Safari). Y en a plein dans la sidebar et dans les postmetadatas. C’est sûrement un caractère qui est mal interprété, mais je sais ni lequel, ni pourquoi.

    Merci du coup de main.

  63. 63

    la nouvelle adresse de l’article mentionné à la fin de l’article :

    http://www.css4design.com/blog.....er-une-war

  64. 64

    Bonjour,
    Tout d’abord, une grand merci pour ce fabuleux tuto !

    J’ai néanmoins un problème avec l’affichage des widgets.
    J’aimerais un sidebar en 2 colonnes et pour le moment ça ne fonctionne pas. Je ne m’inquiète pas trop, je m’occuperai de ça par la suite.

    Le problème est que quand je place un widget, il apparait bien, MAIS il n’y a plus qu’un seul article qui s’affiche sur la page. Alors que quand je n’ai aucun widget il y en a une dizaine.

    J’ai loupé quelque chose ?

    Merci :)

  65. 65

    Rebonjour,
    J’ai trouvé la source du problème. C’était une mauvaise manipulation …

  66. 66

    Bonjour Francis et merci pour vos tutos excellents.
    Je suis en train de suivre cette série pour créer mon propre thème mais arrivé à la widgetisation, je me pose une question : ce tuto est il valable pour un thème sous wp 2.5.1 ?
    Merci d’avance

  67. 67

    theau87 > Oui, normalement, pas de soucis ! ;-)

  68. 68

    OK merci, continuez comme ça !

  69. 69

    jai updaté avec la 2.5 et jai le meme message d’erreur, et j’ai un ta de message semblable quand je post un commentaire…..je crois aussi que si je me délog et que je me reconecte j’ai ces message d’erreur également.

    J’ai pourtant viré la base et tout réinstallé mais ca fait la meme chose….*sigh*

    dyspho , le 2 sept 2008 à 19:29
  70. 70

    je n’arrive pas a lirele code dans le paragraphe “2. Modifications du template sidebar.php”
    Visiblement, c’est tout a fait ce qu’il me faut… Y a t’il eut des modifs d’affichage récement qui expliquerait que je semble le seul à ne pas pouvoir lire !!

  71. 71

    jean > Effectivement, il semblerait qu’il y ait un bug sur l’ensemble du blog au niveau des lignes de code insérées dans les articles. J’essaie de réparer ça demain ! Désolé !

  72. 72

    Merci pour ce tuto mais marche t’il avec 2.6.2 ? j’ai beaucoup d’erreurs…

  73. 73

    jean > Normalement, ça ne devrait pas poser de problèmes… Est-ce que tu peux me donner tes erreurs pour voir ?

  74. 74

    J’ai voulu rajouter une sidebar sur mon thème et ton tuto m’a grandement servi, merci Francis ;)
    Par contre j’ai aussi une “colonnes latérale 3″ qui est apparue dans mon sélecteur dans le panneau admin Oo, pourtant je n’en ai pas rajouté …
    Faut que je fasses ma M.A.J 2.6.2 pour voir si c’est également ok.

    Encore merci ;)

  75. 75

    Excuse moi, tout marche nikel avec 2.6.2, par contre comment peut-on faire pour changer le style des choses affichés dans les widgets (notamment le style des catégories) ? Merci encore…

  76. 76

    Salut Fran6,

    J’ai suivi ton tuto pour créer son propre thème Wordpress de A à Z! Validation acceptée, je suis contente.
    Pour le moment, il est vraiment laid. Mais, je m’apprête à commencer le tuto pour le design avec Photoshop. J’ai hâte.
    Mon problème: J’ai découvert que je peux installer “Falbum” pour publier mes photos Flickr (http://www.flickr.com/photos/prendslapose). J’ai bien installé le plugin mais quand je vais dans l’admin, on me dit que le thème n’est pas conçu pour les widgets. Pourtant arrivé à cette étape du tuto, je suis persuadée que ça marchait! Je pouvais voir la liste des widgets et là non.

    Je ne sais donc pas quoi faire pour résoudre ce problème. Si tu as le temps de m’aider ;)
    Merci d’avance.

  77. 77

    super !
    trouvé chez Daria, et en même temps sur Auttomatic, le seul qui fasse l’affaire pour une brêle comme moi, c’est ton tutorial. Il me manquait la balise de fermeture du code php…

    sauvé !

  78. 78

    bonjour fran6
    j’ai un probleme avec la widgetisation du sidebar.
    j’obtiens ce message d’erreur lorsque je clique sur l’onglet “widget” en temps qu’administrateur :

    ”Aucune barre latérale définie

    Vous lisez ce message parce que le thème que vous utilisez n’est pas conçu pour les widgets, ce qui signifie que vous ne pouvez pas modifier sa barre latérale. Pour obtenir des informations sur la manière de rendre votre thème compatible avec les widgets, lisez ces informations (en anglais).”

    pourtant il me semble avoir tout fait bien comme il faut depuis le début du tutoriel.

    voici mon code de sidebar.php :

    niouz RSS

    <a href=”" title=”Flux RSS des articles”>Flux RSS des articles

    <?php wp_list_pages(’title_li=Pages’); ?>

    Categories

    Archives

    Calendrier

    et voici mon code de fonction.php :

    merci d’avance.
    Amaury.

    PS : si tu pouvais me répondre par e-mail se serait plus pratique pour moi, merci.

  79. 79

    Amaury > Est-ce que tu as créé le fichier functions.php ?

  80. 80

    Oups, j’ai craqué le copier/collé
    je sais pas comment afficher le code :/
    une solus ?

  81. 81

    Bonjour,

    En premier lieu un grand merci pour ces heures de travail passées à réaliser les super tutos. Je m’y suis attaquée ce matin trés tôt et suis arrivée à la fin sans problème. Je vais maintenant me concentrer sur la “customisation” de mon blog.

    J’ai quand même 2 petits soucis que je n’arrive pas à régler malgré moult vérifications:

    - J’ai bien remplacé “the content” par “the excerpt” dans le template archive pour n’afficher que les premières lignes des articles….sans succés, ça ne veut pas fonctionner.

    - Plus embêtant, j’ai bien widgetiser la sidebar, le bouton apparaît dans mon espace admin mais les différentes catégories de ma sidebar n’ont pas disparues. Du coup, dans mon espace admin, il est écrit qu’aucun widget n’est présent sur mon blog alors qu’il y en a 4 ou 5 qui ne veulent pas partir…

    Auriez-vous une solution à ces problèmes?
    Merci beaucoup par avance.

    Orchidée , le 18 déc 2008 à 12:20
  82. 82

    Супер статья! Подписался на RSS, буду следить =)

    Женя , le 20 jan 2009 à 15:35
  83. 83

    Salut,

    Je ne comprends comment

    ”Remplacez “content” par “excerpt”:” dans l’index.php, car à ce stade mon index.php ne contient que

    Aurais-je sauté une étape ?

    Xarez , le 30 jan 2009 à 1:19
  84. 84

    que

    Xarez , le 30 jan 2009 à 1:21
  85. 85

    arf le texte en php ne passe pas :/

    Bref, je n’ai que

    php get_header
    php get_sidebar
    php get_footer

    dans mon index….

    Xarez , le 30 jan 2009 à 1:22
  86. 86

    Bon, bon, bon
    Comme plusieurs personnes dont j’ai lu les messages précédent, moi aussi j’ai mon problème ici…
    Le contenu de ma sidebar n’a pas disparu de l’écran, j’ai bien la gestion des widgets dans l’admin, sauf qu’il y est notifié:

    ” 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…”

    Je suis en local sur wordpress 2.7.1, j’ai bien suivi toutes les instructions, qu’une seule sidebar, donc pas de “s” dans functions.php etc…

    D’ailleurs le fichier “functions” il doit bien être dans le même dossier que “creation theme” et non à l’intérieur de celui ci?

    whatodo?

  87. 87

    hum j’ai mis functions dans le dossier creation theme et finalement j’ai accès à mes widgets, ça devait donc être ça, par contre, le contenu de ma sidebar apparaît toujours sur ma page…

  88. 88

    (alors que dans la catégorie widget, wordpress me dit “Vous utilisez actuellement 0 widget dans la colonne latérale.”)

  89. 89

    Problème résolu, quand j’ai choisi d’ajouter le widget “calendar” dans admin et que je suis retournée sur ma page, il n’y avait bien que le calendar!
    Voilà en fait du coup je balance 4 posts à la suite pour rien ^^

  90. 90

    Pas de soucis Karine, on apprend au fur et à mesure !! ;-)

  91. 91

    Tiens , j’avais le même soucis que Amaury et hanjy! Car en suivant tes tutoriaux je me retrouvai aussi avec

    ”Aucune barre latérale définie

    The theme you are currently using isn’t widget-aware, meaning that it has no sidebars that you are able to change.”
    En fait c’était assez bête j’avais tous simplement créé un fichier function.php au lieu de functions.php

    Si ça peut servir à quelqu’un,…

  92. 92

    Salut Fran6 et tout d’abord merci pour cet excellent ttravail.

    Tout fonctionne pour le moment mais j’ai une question : dans functions.php j’ai mis

    register_sidebar(2);

    car je souhaite mettre 2 colonnes à droite, mais dans mon interface d’administration il ne me propose qu’une colonne latérale. Avant de continuer je souhaite savoir si c’est normal ?

    merci

  93. 93

    Dom > Essaie avec un S à la fin de sidebar, register_sidebars(2);

  94. 94

    Bingo. Je trouve la deuxième colonne en rajoutant le s

    register_sidebars(2);

    Merci pour la célérité et l’exactitude de la réponse

  95. 95

    J’ai changé aussi pour avoir deux colonnes même si je n’en veux qu’une.
    Toujours gros problème quand je ne mets pas les S j’ai qu’une sidebar comme je voudrais, mais le hic c’est qu’elle est en dessous je ne sais pas la mettre sur la droite.
    Et quand je mets les S, ben j’ai plus rien du tout…plus de sidebar, même si dans l’onglet widget il m’affiche bien les deux colonnes, aucune n’apparaît à droite sur le blog en local…

    Je suis un peu perdue !

  96. 96

    slt a tous jé instalé un widget smart youtube mais je ne sais pas comment l’afficher dans mes article.coment je doit faire??

    aoudjane , le 9 juin 2009 à 18:54
  97. 97

    sé bon jé trouvé l astuce le truc ses que j’est fait la méme betise que Karine.désolé.

    aoudjane , le 9 juin 2009 à 19:05
  98. 98

    bonjour fran6
    j’ai un problème avec la widgetisation du sidebar.
    Lorsque je rajoute la ligne et comme indiqué, j’ai une erreur dans le preview de mon template de ce style : Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Et lorsque je regarde le site en ligne il met enormement de temps à s’afficher, et affiche une longue ligne de pointillé verticaux au lieu de la sidebar.
    Si j’ôte cette ligne de code, tout marche, mais ce n’est pas le but.

    Carine , le 23 juin 2009 à 22:03
  99. 99

    J’ai trouvé une solution en copiant le fichier sidebar.php et le fichier functions.php du theme de base. Peux-être que depuis la nouvelle version y’a un problème. Si tu veux en savoir plus, je peux refaire la manip inverse et te montrer ce que ça donne.
    A part cette partie, tout va bien, merci encore pour ce tutos gigantesque :D

    Carine , le 24 juin 2009 à 8:37
  100. 100

    bonjour et merci pour ces super tutos,
    mais j’ai un petit souci à cette étape, lorsque je créé le fichier functions.php et que j’y colle le code ci dessus, lorsque je vais sur le site j’obtiens ces lignes sur la page connection à wordpress

    Warning: Cannot modify header information – headers already sent by (output started at /homepages/39/d277276539/htdocs/marionvobmann/blog/wp-content/themes/template02a/functions.php:14) in /homepages/39/d277276539/htdocs/marionvobmann/blog/wp-login.php on line 287

    Warning: Cannot modify header information – headers already sent by (output started at /homepages/39/d277276539/htdocs/marionvobmann/blog/wp-content/themes/template02a/functions.php:14) in /homepages/39/d277276539/htdocs/marionvobmann/blog/wp-login.php on line 299

    et
    sur la page du site en lui-même, bien que tout le reste s’affiche. Une solution?
    –ca fait trois fois que je réinstalle wp, et à chaque fois la même chose

    merci d’avance

  101. 101

    ah ca y’est ca marche !! après plus d’une heure de recherches,
    j’ai enfin réussi. Comme je travaille directement sur le serveur (pas en local), il m’a suffit de remplacer le fichier wp-login.php original par le même en utf-8, et c’est bon

  102. 102

    Juste un petit message à propos de la “widgetisation” de la sidebar.

    Une question se pose une fois la manipulation effectuée :
    Comment faire passer des arguments au widget (et donc à son template-tag) ?

    Car le problèmeest que l’on y a plus accès directement : le template-tag est généré par WP et l’administration ne permet pas de gérer les arguments éventuels que l’on voudrait y rajouter

    Je pensais que l’administration aurais permis de faire passer ces arguments avec des textbox mais non, on peut juste assigner un titre.

    Serais-je passé à côté de quelque chose ?

    Exemple pratique :
    Je souhaitais diminuer la taille des mots clé les plus grands dans le widget d’origine “Nuage de mots-clefs”

    Cela est tout à fait possible en tant normal (= sidebar pas widgetisée), voir le codex officiel pour ‘wp_tag_cloud’
    Il s’agit de faire passer l’argument ‘largest = 16′ (par exemple) au template-tag.

    Seulement, une fois la sidebar ‘wigetisée’, il n’est pas possible d’accéder directement à ce template-tag, et donc de lui faire passer un tel argument.

    La solution est donc de rajouter quelque lignes dans le fichier functions.php

    Tout est expliqué dans cette page du blog burninghat.net (solution 2)

    De rien ;)

  103. 103

    Je ne comprends pas j’ai tout essayé et toujours le pb “aucune colonne latérale définie” et malheureusement je vois que beaucoup ont posé la question mais pas de réponses.
    En tout cas, excellent travail ce tutoriel cela permet de mieux comprendre comment tout cela fonctionne ce qui n’est pas chose aisée…

  104. 104

    Finalement, j’ai réussi et je précise pour les prochains se trouvant dans le même cas. C’est tout simple, il faut que vous changiez de thèmes et que vous le réactiviez afin de pouvoir acceder aux widgets.
    Bonne chance à tous et merci encore à francis

  105. 105

    Merci Greg pour la réponse… Bizarre qu’il fasse réactiver le thème pour que la widgétisation soit prise en compte… Quoi qu’il en soit, si ça marche !! :D

  106. 106

    На пике моды – женские джинсы-корсет.

  107. 107

    Bonjour fran6, et merci pour ce tuto,
    Moi j’ai commencé le tuto en partant de zero comme tu le proposais au début de tes post, et la j’arrive à la widgetisation, mais la je ne sais pas ou j’ai merdé mais j’ai le meme problème que greg, mais moi en désactivant mon thème et en le réactivant ça ne change rien…
    Du coup après avoir tournée en rond pendant un moment le me suis décidé a t’envoyer un petit message au cas ou tu es la solution.

    Pour le moment dans ma fenetre des widget il me dit ça wordpress:

    Aucune colonne 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 colonne 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).

    je sais que j’arrive un peu tard a peine 2 ans apres que tu es fait se tuto mais j’essaye d’apprendre a utiliser bien wordpress et je me disais que d’apprendre a faire le thème me permettrais par la suite pouvoir en modifier a ma guise plus facilement en sachant ou aller pour modifier les chose qui m’interesse.

  108. 108

    Bonsoir Francis, tout d’abord vraiment merci pour ces tutos ils sont canons même pour des débutants et c’est très appréciable.

    Cependant j’ai un petit souci et je viens donc chercher ton aide :

    après avoir fini les manips en suivant ce tuto tout s’affiche bien sur le blog mais je n’accède plus à la page admin

    Quand j’essaie d’aller sur http://localhost:8888/wordpress/wp-login.php j’ai une page blanche… Donc impossible d’essayer de changer de thème pour vérifier si le problème vient de là.

    Je ne vois vraiment pas où j’aurais fait une erreur donc si jamais t’avais une idée je suis toute ouïe.

    Merci très sincèrement de ton aide :)

  109. 109

    Внутри пятиугольника спрятан шарик. На треугольнике есть зеркальце. А вершину пирамидки будет венчать большой разноцветный шар! Игрушка для детей.

  110. 110

    Tout fonctionne parfaitement bien ! Merci !
    Par contre, comme il existe des widgets WP pour le calendrier, les catégories, les liens.. est-il nécessaire de les avoir dans le code du fichier sidebar.php ?

  111. 111

    Salut, tout d’abord merci pour ces supers tutos!!!
    alors moi en lisant les coms j’ai l’impression d’être la seule grosse débile sur ce site, parceque je sais déja mm pas comment on accède a l’admin de son blog, a savoir que moi je n’y connais strictement rien a la base et que je suis pas à pas le tuto, mais au niveau des widgets je reste bloquée comme apparemment pas mal de monde, mais j’ai l’impression que le pbm chez moi vient du fait que je ne sais d’abord pas chercher au bon endroit…donc bah tant pis, je pense qu’il n’y a pas de question “conne” quand on ne sait pas… ^^ donc je me lance : comment accéder a ce fameux admin!!?
    merci pour la réponse éventuelle :)

    Emilie , le 25 jan 2010 à 11:57
  112. 112

    Bon ben j’ai résolu mon pbm moi mm et j’ai mm trouvé l’onglet widgets!!! ^^

    Emilie , le 27 jan 2010 à 12:04
  113. 113

    Bonjour,

    Afin d’éviter les bugs lors de votre transfert de local à hebergeur :

    De type :

    Warning: Cannot modify header information – headers already sent by (output started at …\wp-content\themes\XXX\functions.php:11) in …\wp-includes\pluggable.php on line XXX

    Je vous conseil ce code pour la page functions.php

    ”,
    ‘after_widget’ => ”,
    ‘before_title’ => ”,
    ‘after_title’ => ”,
    ));
    ?>

    Sinon mis à part ce probleme, tout est nickel, merci Fran6 pour ce superbe tuto !

  114. 114

    Sorry

    Autant pour moi, Le code du message d’en haut ne passe pas.

    -> Donc ouvrez un theme classic minimal de wordpress et copiez coller le fichier functions.php présent dans ce theme.

    Attention au :
    register_sidebar(array(
    adapté a votre nbre de colonnes
    Par défaut, il n’est pas précédé d’un chiffre.

    Bon courage.

  115. 115

    Oui effectivement, les choses ont un peu été améliorée depuis la rédaction de ces tutos, il faut que je pense à mettre tout ça à jour !! ;-)

  1. 1 Créer votre thème wordpress en 13 leçons avec fran6art Pingback on 21 mai, 2007 à 22:27
  2. 2 Wordpress:Widgets « FireFox Pingback on 22 mai, 2007 à 0:50
  3. 3 Création de son propre thème wordpress #2 Réflexions, construction sur papier et sidebars Pingback on 25 août, 2008 à 11:36
  4. 4 Création Thème Wordpress | Tutorial #12: la Sidebar: suite et fin Pingback on 9 oct, 2008 à 15:05
  5. 5 Daria blogue - Pingback on 2 nov, 2008 à 18:01
  6. 6 Widgetiser votre sidbar et rendre votre thème widget-ready : | Geek-Presse.net Pingback on 16 jan, 2010 à 17:50
  7. 7 Widgetize your sidebar and make your theme widget-ready | Geek-Presse.net Pingback on 18 jan, 2010 à 0:21

Laisser un commentaire