web-dev-qa-db-fra.com

Où placer le code dans les modules Joomla

Lors du développement d'une extension Joomla, existe-t-il des meilleures pratiques, instructions ou recommandations concernant l'emplacement des différentes parties de mon code (PHP et HTML)?

Je pense surtout aux fichiers de base inclus dans un module:

mod_mymodule.php
helper.php
tmpl/default.php

En outre, quels sont les principaux avantages de l'inclusion d'un helper.php fichier, et peut-il être supprimé dans certains cas?

8
johanpw

helper.php:

Ce fichier est l'endroit où toutes vos fonctions appartenant à une classe devraient aller. Il s'agit en gros de la version de module d'un modèle pour un composant. Par conséquent, des tâches telles que l'exécution de requêtes de base de données, etc. Ce fichier présente l'avantage de conserver toutes les fonctionnalités essentielles dans un emplacement. Si un module contient déjà ce fichier, 1 règle simple, ne le supprimez pas.

mod_mymodule.php:

Comme @ subashbasnet8 l'a déjà mentionné, ce fichier est l'endroit où vous pouvez appeler vos fonctions et constitue également un bon emplacement pour obtenir les paramètres du module et les définir en tant que variable. Vous devriez également faire des choses telles que récupérer vos variables POST ici. Le balisage HTML devrait pas appartenir à ce fichier.

default.php:

Ce fichier doit contenir tout votre balisage HTML, simplement parce qu'il permettra ensuite à l'utilisateur (ou même à votre pseudo) de le remplacer, ce que vous ne pouvez pas faire avec les 2 autres fichiers. Des éléments tels que l'importation de bibliothèques CSS/JS doivent également figurer ici, afin que tout remplacement puisse être effectué.

7
Lodder

Fondamentalement, mod_mymodule.php est une page de démarrage de votre module. Ici, vous allez inclure le fichier d'aide et appeler la fonction nécessaire qui réside dans helper.php. vous pouvez mettre du code HTML dans la page tmpl/default.php et le code php dans les pages helper et mod_mymodule.php.

Pour plus de détails s'il vous plaît voir this . Merci.

5
subashbasnet8