Création d'un sous-thème avec Zen
La flexibilité de Drupal nous permet d'avoir un sous-thème qui hérite d'un thème principal, qui s'occupera des tâches les plus compliquées et nous permet de prendre des raccourcis que Drupal ne nous permettrait pas à la base dans certains cas. Un des thèmes qui suit ce système et qui me tient à coeur est Zen. Le thème est présentement installé sur plus de 50 000 sites, Drupal versions 6 et 7 confondues.
Pour faire votre premier sous-thème et suivre ce petit guide, vous aurez besoin de ces fichiers :
Une petite parenthèse rapide sur les numéros de version : le premier chiffre correspond à la version de Drupal (ici 7.3 correspond à Drupal 7). Les versions accompagnées de la note "-dev" signifient que cette version est présentement en développement. Ces versions ont parfois des bogues importants, mais ils ont aussi des fonctionnalités importantes et utiles qui ne sont pas encore tout à fait stables. Une version -dev très utile d'un module très connu, CCK. La version 6-x.3.x-dev offre la possibilité d'avoir de créer des multigroupes. Fin de la parenthèse.
- Installez Drupal 7
- Créer un dossier themes dans le dossier sites/all/ afin d'avoir une architecture comme celle-ci : sites/all/themes
- Extrayez Zen dans le nouveau dossier themes
- Dans le dossier de Zen, vous trouverez un dossier qui s'appelle STARTERKIT. Copier ce dossier dans sites/all/themes.
- Renommer le dossier STARTERKIT avec un nouveau nom qui sera le nom de votre thème. Attention de ne pas lui donner le même nom qu'un autre module afin d'éviter les conflits. Pour notre exemple le thème va s'appeler liteweb.
- Renommer le fichier STARTERKIT.info.txt à liteweb.info (il faut enlever le .txt).
- Ouvrer le fichier liteweb.info, changer l'attribut "name =" à Liteweb et modifier la description afin d'avoir quelque chose de plus significatif.
- On ouvre ensuite le fichier theme-settings.php et on modifie toutes les occurrences de STARTERKIT par liteweb.
À partir de ce moment vous devriez avoir une version fonctionnelle d'un nouveau sous-thème de Zen, félicitations!
Pour ceux qui veulent pousser les sous-thèmes à leur maximum, voici une étape importante :
- Ouvrez template.php
- Modifier toutes les occurrences de STARTERKIT par liteweb
- Décommenter les fonctions qui vous intéressent. Ces fonctions permettent entre autres de modifier ou d'ajouter des variables avant que Drupal arrive aux fichiers template.
Contrairement à certains thèmes, Zen a été pensé pour le développement plutôt que de fournir une solution tout en un (contrairement aux thèmes prenium par exemple, ou garland le thème par défaut). Faites-vous un cadeau, prenez le temps d'essayer un sous-thème comme Zen plutôt que d'essayer d'adapter Garland à vos besoins...
Menu principal
À propos
Je m'appelle Pierre-Paul Lefebvre. Je suis programmeur sur la Rive-Sud de Montréal et je travaille pour l'agence web TP1.
Ce blog devrait parler de mes développements en tant que programmeur.
Bonne lecture!

Commentaires
Bonjour,
Ton article me donne envie de tester le theming dans drupal 7.
J'ai suivi ton how-to ci-dessus et ok, les css de mon nouveau thème sont pris en compte.
Maintenant j'aimerai modifier la structure de page : dois-je copier les fichiers tpl de zen vers "mon theme" pour les modifier ?
Merci !
Luc
Pour modifier
Exact Luc, les fichiers présents dans ton thème seront lus par Drupal et s'ils ne sont pas présent, les fichiers dans le dossier Zen seront pris en compte.
Ajouter un commentaire