Accueil / 5 Erreurs à éviter pour votre site Drupal - nombre 1: l'architecture

5 Erreurs à éviter pour votre site Drupal - nombre 1: l'architecture

Drupal est l’un des systèmes de gestion de contenu les plus flexibles qui existe. Dans cette série de post, je vais revenir en détail sur 5 erreurs à éviter sur votre site Web Drupal qui incluent: l’architecture, la sécurité, la performance, l’infrastructure, et la gestion du cycle de vie du site.

Un remerciement chaleureux à mon collègue Ryan MacInnis qui m’a incité à écrire cette série d’articles.

Du point de vue de l’architecture, voici les décisions vitales que vous prendrez pour vous assurer du succès et de la performance de votre site Web Drupal.

  • Comment structurer votre contenu
  • Comment configurer l’affichage
  • Comment organiser les fonctionnalités

Architecture: Contenu

Le contenu est l’essence de votre site Web, sa raison d’exister. Déterminer la structure du contenu est la première étape dans la création de l’architecture de votre site.

Meilleures pratiques

Planifier vos structures de contenu, incluant les champs et les types de contenus. Une architecture de contenu claire permet de garantir une bonne performance, une meilleure expérience utilisateur, ainsi qu’une maintenance facilitée.

Erreur: Trop de types de contenus différents.
Conséquence: Cela crée de la confusion pour les créateurs de contenus
Exemple: Des types de contenus “News” et “Articles” qui sont quasiment identiques.
Solution: Réutiliser et standardiser les types de contenus.

Erreur: Nouveaux champs créés pour chaque type de contenu.
Conséquence: Gaspillage de ressources et freine la performance.
Exemple: Deux champs différents pour ville de l’établissement, et ville de l’enseignant.
Solution: Réutiliser et standardiser les champs. Vérifier votre rapport de champ sur Exemple.com/admin/reports/fields.

Erreur: Des types de contenus sans nœud (node)
Conséquence: Un type de contenu non nécessaire ajoute une complexité inutile.
Solution: Réévaluer vos besoins quand vous concevez votre site. Filtrer votre liste de contenu pour identifier les types de contenus inutilisés afin de les supprimer.

Architecture: Affichage (Display)

Drupal est un outil puissant qui permet d’afficher du contenu dans différentes régions, différents formats, et avec des affichages divers. L’architecture Affichage (Display) inclut les modules Vues, Panels, et Contexte.

Meilleures pratiques

Planifier votre architecture d’affichage pour afficher le contenu seulement quand nécessaire. Optimiser et réutiliser autant que possible. Toujours séparer logique et présentation. Commencer avec un thème de base solide et l’apprendre précisément. La facilité pour changer l’apparence du site est une indication de la bonne architecture d’affichage.

Erreur: Une nouvelle Vue pour chaque liste
Exemple: Trois vues distinctes pour des emplois à Londres, Paris et Lisbonne.
Solution: Analyser chaque nouvelle Vue que vous créez pour déterminer si vous pouvez réutiliser une Vue dont vous disposez déjà, et utiliser les filtres contextuels pour afficher les listes basées sur des paramètres spécifiques.

Erreur: Code PHP ou autre logique dans la base de données ou des fichiers template ( .tpl .php) files.
Exemple: Un code PHP qui détermine la visibilité des blocks de score dans une section sports.
Solution: Ecrire toute la logique, incluant le PHP, les services calls to web, les requêtes SQL, dans les modules.

Outil recommandé:

Le module Theme Developer http://drupal.org/project/devel_themer
En activant ce module, vous pouvez passer votre souris sur différents emplacements de la page web pour voir à quel template correspond chaque section.

Architecture: Site ou Fonctionnalité

L’architecture du site inclut la manière dont votre site fonctionne, le nombre de modules et comment ils interagissent.

Meilleures pratiques

Gardez votre site léger, en utilisant le minimum de code ainsi que le minimum nécessaire de modules. Utilisez les modules contrib à chaque fois que c’est possible au lieu d’écrire du code spécifique. Devenez un expert des modules contrib clés, tels que Vues et Panels. Suivez les standards Drupal pour le code personnalisé. Réévaluez votre architecture régulièrement.

Erreur: Trop de modules. Plus de 200 modules activés signifie que vous devez faire une analyse afin de déterminer la pertinence de tous les modules.
Exemple: Un plan qui à l’origine incluait des langages multiples, mais finalement le site n’ a été construit qu’en anglais. Tous les modules multilingues et les modules contrib ont été installés et actives.
Solution: Réévaluer votre site régulièrement, et désactiver, désinstaller et supprimer les modules inutilisés dans la base du code.

Erreur: Trop de rôles qui rendent la maintenance et les contrôles de sécurité compliqués.
Exemple: Un plan qui à l’origine prévoyait un besoin de nombreux rôles, mais la plupart non utilisés. Souvent les rôles tendent à vouloir trop se rapprocher des fonctions.
Solution: Evaluer les rôles et permissions pour votre site. Regrouper par rôles fonctionnels permet d’allouer facilement les permissions.

Erreur: Créer du code personnalisé alors qu’un module contrib répond déjà à ce besoin.
Exemple: Un module personnalisé pour créer des formulaires à la volée qui peuvent être envoyés par mail aux administrateurs de site.
Solution: Dans ce cas, le module largement testé Webform offre cette fonctionnalité, avec la flexibilité pour les administrateurs de site. Assurez-vous qu’aucun module contrib ne répond pas déjà à vos besoins.

Erreur: Toucher au core ou aux modules contrib. Le comportement deviendra imprévisible. Les mises à jour sont rendues difficiles.
Solution: Si le core ou le contrib ne répond pas exactement à votre besoin, vous pouvez construire un module personnalisé qui utilise des hooks pour modifier le comportement. Si vous “héritez” d’un site, utilisez Acquia Insight ou le module Hacked! (voir Outils recommandés)

Erreur: Personnaliser du code en utilisant les mauvais hooks ou en utilisant une API Drupal de manière incorrecte.
Exemple: En utilisant hook_init, qui se charge sur chaque page, pour un élément utilisé uniquement sur la page d’accueil.
Solution: Planifier avec soin votre utilisation de code personnalisé. Trouver les bons hooks et la bonne syntaxe en utilisant la documentation au sujet des API sur drupal.org: http://api.drupal.org/api/drupal.

Outils recommandés:

  • Simplytest.me. Sur ce site, entrez simplement le nom d’un module Drupal. Le site activera une instance Drupal ainsi vous pourrez tester le module pendant 30 minutes.
  • Hacked! moduleHacked! module. Ce module scanne votre installation Drupal, en incluant les modules contrib et les thèmes, et détermine s’ils ont été modifiés. Utilisé avec le module Diff, les écrans de résultat vous disent quelles lignes exactement ont changé. A ne surtout pas utiliser sur les sites en production.
  • Acquia Insight. Notre service effectue des scans équivalents à ceux de Hacked module, mais fournit aussi des contrôles additionnels sur la configuration de site et la sécurité.

Ajouter un commentaire

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Filtered HTML

  • Use [acphone_sales], [acphone_sales_text], [acphone_support], [acphone_international], [acphone_devcloud], [acphone_extra1] and [acphone_extra2] as placeholders for Acquia phone numbers. Add class "acquia-phones-link" to wrapper element to make number a link.
  • Pour publier des morceaux de code, entourez-les avec les balises <code>...</code>. Pour du PHP, utilisez. <?php ... ?>, ce qui va colorier le code en fonction de sa syntaxe.
  • Les adresses de pages web et de courriels sont transformées en liens automatiquement.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <h4> <h5> <h2> <img>
  • Les lignes et les paragraphes vont à la ligne automatiquement.
By submitting this form, you accept the Mollom privacy policy.