Ce billet sera revu au fil des nouvelles recommandations.
Modules
Ne pas activer trop de modules
Activer un module que vous n'utilisez pas et ne configurez pas pour être utile va allourdir les traitements (invocation des hooks, surcharge des menus, etc) et donc pénalisera l'exécution en temps et en consommation mémoire.
Par exemple, activez Context sans définir un seul contexte aura un effet à chaque chargement de page puisque certaines fonctions du module seront invoquées, des tests seront exécutés, etc.
Une autre raison est le dépassement potentiel du timeout si vous activez trop de modules et que vous demandez une vérification des mises à jour.
Ne pas installer trop de modules
Si vous installer beaucoup de modules, cela aura un effet sur la page de gestion des modules qui sera non seulement très confuses mais également très lourde à charger, voire même impossible à charger...
Privilégier les modules proches du Core
C'est pratiquement l'idée première qui sous-tend Drupal : réutiliser des petits morceaux et collaborer plutôt que redévelopper une usine à gaz. Pour faciliter la maintenance, les mises à jour et renforcer la pérennité de vos fonctionnalités, optez donc plutôt pour un module qui va apporter de la valeur ajoutée en se basant sur l'existant à un module qui va recréer de toutes pièces ce dont il a besoin.
Par exemple, on choisira plutôt Calendar qu'Event pour gérer les agendas.
Types de contenu
Taxonomie ou champ CCK?
Vous pouvez être confronté à ce choix lorsque vous souhaitez étiqueté un contenu. Choisir l'une ou l'autre option dépend surtout du fait que vous utiliserez ou non la navigation par les étiquettes.
Si oui, optez pour la taxonomie.
Si non, choisissez plutôt un champ CCK qui justement n'affichera pas l'étiquette et vous permettra de gérer les affichages via un ensemble de champs que vous testerez ensuite dans vos templates.
Partager les champs
Bonne idée! Cela évite d'avoir à configurer X fois un champ et permet de définir des vues communes à plusieurs types de contenu plus facilement.
Cela dit, il faut bien avoir en tête qu'il s'agit d'un partage et non d'un clonage lorsque vous utilisez un même champ dans deux types de contenu : une action sur le champ dans un type de contenu aura aussi un effet pour les autres types de contenu.
L'affichage d'un même champ peut lui être différent d'un type de contenu à un autre.
Ne partagez que les champs qui ont vraiment les mêmes caractéristiques d'un type de contenu à un autre, et alors préfixez les noms par shared_ pour vous y retrouver. Inutile de partager un champ puissance entre un type de contenu moto et un type de contenu perceuse, car vous ne définirez pas la puissance de la même façon dans les deux cas, par contre partager la puissance entre une perceuse et une scie électrique a déjà plus de sens.
Vues
Regrouper les affichages
L'idée de regrouper les affichages est d'éviter de tout redéfinir pour chaque affichage. Il faut donc grouper nom pas par destination (bloc, page, etc) mais plutôt soit en groupant les affichages qui partagent les mêmes filtres ou les mêmes rendus (champ+disposition) de façon à avoir le moins d'éléments à changer et à profiter au maximum de l'affichage par défaut.
![[title] [title]](http://www.tahiticlic.com/files/imagecache/vignette100/worldwide_1000.jpg)


Vos réactions
Poster un nouveau commentaire