Voici rassemblées ici des informations disponibles par ailleurs sur ce site, dans le forum, sur le wiki de dotclear... Ne vous étonnez donc pas si quelques points vous semblent redondants avec d'autres articles croisés au cours de vos voyages dotcleariens.

Il s'agit là de quelques bases qui devraient vous permettre de partir d'un bon pied ; à vous aussi de bosser un peu et de faire fonctionner les moteurs de recherche et vos cellules grises pour aller plus loin !

  • Préparation
    • Création du répertoire du nouveau thème
  • Réalisation
    • Contenu
      • Mécanique générale
      • Suppressions et déplacements
      • Plugins
      • Fonctions gabarit
      • Fonctions personnalisées
    • Présentation
  • Distribution

Préparation

La première étape consistera à créer un répertoire contenant tout ce qui est nécessaire à un thème personnalisé. Je pars du principe que vos personnalisations vont modifier non seulement la présentation mais aussi l'organisation du contenu.

Création d'un répertoire dont le nom ne doit comporter que des lettres ou des chiffres, sans espaces ni signes bizarroïdes. Ce répertoire contiendra :

  1. Copie de tous les fichiers dont l'extension est .php contenus dans <dotclear>/themes/default ou dans le répertoire du thème qui vous sert de base ;
  2. Un fichier nommé desc.xml avec les infos personnalisées (appendice 1) ;
  3. Un répertoire pour les images du thème (avec les mêmes consignes de nommage que pour le répertoire du thème ;
  4. Un fichier style.css vide pour le moment[1]

Réalisation

Préambule

Testez, testez, testez, testez chaque modif, qu'elle porte sur le fond ou sur la forme. Testez à chaque fois, testez sur le maximum de navigateurs disponibles. Et validez. DotClear offre une syntaxe xhtml stricte, vérifiez que vous n'avez pas cassé le jouet à l'aide de l'un des nombreux validateurs disponibles.

D'abord le contenu et la structure

Déterminez en premier lieu quel sera le contenu de votre blog. Coucher par écrit la liste des modifications que vous souhaitez apporter au contenu pourrait être une bonne idée de départ. Vous pourrez ensuite classer l'ordre dans lequel vous procéderez à ces modifications. Que voulez-vous supprimer ou déplacer ? Quelles fonctionnalités voulez-vous ajouter ?

Suppressions et déplacements

Avant de vous attaquer aux ajouts divers, commencez par supprimer ou déplacer tel ou tel élément si nécessaire dans les fichiers existants. (Et... testez !)

Plugins

Consultez en premier lieu la page des plugins, inutile de réinventer la poudre. Si votre besoin n'y est pas satisfait, faites une recherche sur la page des astuces, les codes en stock, le forum, les rubriques Paillettes et fanfreluches et Apprenti sorcier de ce blog.

Fonctions gabarits

Connaissez-vous la page à l'usage du designer listant les fonctions gabarit ? Un assortiment de fonctions prêtes à l'emploi avec leurs paramètres personnalisables et des exemples. Une mine.

Fonctions personnalisées

Si vous voulez créer une fonction différente de celles qui figurent dans le fichier layout/functions.php, ne les modifiez pas dans ce fichier. Faites-en une copie, collez la dans le fichier prepend.php de votre thème, renommez-la[2], faites-y les modifs que vous souhaitez. Il vous suffira ensuite d'appeler mydcFunction en lieu et place du dcFunction initial dans le fichier template.

Puis la forme

  • travail sur la css :
    • construction ou copie de la structure css du thème
    • déco dans les grandes lignes
    • petits détails qui tuent

Aides

Et de la doc :

Appendices

Le fichier desc.xml

A l'aide d'un éditeur de texte, créer un fichier nommé desc.xml avec le contenu suivant :

 <?xml version="1.0" encoding="ISO-8859-1"?>
 <theme name="themeperso" version="1.0" active="true">
 <author>Votre nom</author>
 <label>Un nom pour le theme</label>
 <desc> Un descriptif succinct ou un commentaire !</desc>
 </theme>

Important : le theme name doit refléter exactement le nom que vous avez attribué au répertoire de votre thème.

Notes

[1] Je me permets d'insister lourdement sur ce point : construire le contenu de son blog en ne s'occupant pas de sa présentation vous permettra de vous assurer que son organisation est logique et accessible. Ce que vous visualisez sans feuille de style c'est ce que « verront » les robots des moteurs de recherche, ce que lira un navigateur textuel utilisé par un aveugle, l'ordre des infos qui s'afficheront dans un navigateur wap. Enfin, si vous installez des plugins ou des codes supplémentaires vous serez assuré qu'un éventuel mauvais fonctionnement est dû à une erreur d'intégration de vos codes et non à un dysfonctionnement de la feuille de style et vous pourrez le corriger plus facilement.

[2] L'usage est de faire précéder le nom de la nouvelle fonction de my, mydcCatList par exemple.