Je suis très curieux de savoir comment un module Drupal peut être dismétifié dans plusieurs fichiers incluant. Un certain nombre de supports crochets au lien comprennent les composants, tels que Hook_Menu, Hook_eme, etc. P>
Une fois que j'ai planifié de simplifier l'un de mes module complexes atteints de 2,3 000 lignes avec la moitié de son ensemble de fonctionnalités. Je dois retourner toutes ces étapes en raison du manque de connaissances sur la portée de l'inclusion. P>
aidez-moi à cet égard s'il existe des informations détaillées. P>
3 Réponses :
C'est simple, il suffit d'examiner d'autres grands modules (comme CCK, Vues, etc.). Les crochets principaux doivent être dans le module, d'autres doivent être dans différents fichiers - Thèmes, pages d'administration, autres pages, fonctions de service, etc. P>
Utiliser plus de fichiers, il suffit de regrouper des choses similaires dans le même dossier, de le maintenir plus géré. Les fichiers typiques utilisés sont p>
.Admin.inc code> pour toutes les trucs d'administration, les rappels de menu, les formulaires, etc. Li>
-
.Pages.inc code> pour les rappels de menu avant. Li>
-
.theme.inc code> pour les fonctions de thème, les crochets de préprocession, etc. Li>
-
.Forms.inc code> pour les formulaires non administratifs et leurs gestionnaires. li>
ul>
C'est plus un style de codage qui autre chose. Il s'agit donc simplement de vous aider à maintenir le code que vous avez écrit. P>
C'est pour la performance aussi. Toutes les fonctions de fichiers .Module sont chargées à chaque initialisation.
what Nikit a dit est correct. Un module ne doit jamais charger de manière inconditionnelle, il doit nécessairement appeler
J'ajouterai qu'il y a des crochets qui sont autorisés à définir quels fichiers doivent être chargés. Des exemples de tels crochets sont harok_theme () code> et
harok_menu () code>.
module_load_include () code> de l'extérieur d'une fonction. p>
Mais mon intention principale concerne plusieurs fonctions d'accès aux données qui sont utilisées dans diverses parties. par exemple. commentaires. COMMENT_TOTAL_COUNT () CODE>,
COMMENT_TODAY_COUNT () CODE> est utilisé dans les modèles,
COMMENT_THREAD () CODE> est requis sur la page Admin ainsi que sur la page de contenu.
Commentaire_insert () Code> Sur la page Contenu tandis que
Commentaire_ReMove () CODE> et
COMMENT_EDIT () CODE> SUR L'ADMIN Page. Dois-je utiliser conventionnel
exiger code> ou
inclure la syntaxe code>? Et qu'en est-il d'inclure plusieurs fichiers?
La fonction utilisée pour inclure des fichiers PHP est module_load_include () code> a>. Vous pouvez inclure un ou plusieurs fichiers.