[comment]: # translation:outdated

[comment]: # aside:2

[comment]: # ({a2041013-7b40086b})

# Structure des fichiers des modules

Tout le code lié à un module est stocké dans un seul répertoire à l'intérieur du répertoire **modules** de votre installation frontale Zabbix (par exemple, *zabbix/ui/modules*).

[comment]: # ({/a2041013-7b40086b})

[comment]: # ({887796fe-dffd3e26})
### Arborescence des fichiers du module

````yaml
example_module_directory/ (obligatoire)
   manifest.json (obligatoire) Métadonnées et définition des actions.
   Module.php Initialisation du module et gestion des événements.
   actions/ Fichiers du contrôleur d’action.
   SomethingView.php
   SomethingCreate.php
   SomethingDelete.php
   data_export/
   ExportAsXml.php
   ExporterAsExcel.php
   views/ Afficher les fichiers.
   example.something.view.php
   example.something.delete.php
   assets/ Tous les fichiers supplémentaires à utiliser dans les vues. Doit être spécifié dans manifest.json.
   js/ JavaScript utilisés dans les vues.
   example.something.view.js.php
   css/ Fichiers CSS utilisés dans les vues.
   example.something.css
   image.png Images utilisées dans les vues.
   example.something.file Tout fichier à utiliser dans les vues.
````

[comment]: # ({/887796fe-dffd3e26})

[comment]: # ({f1074788-1d438d3e})
### Ecrire un module

Un exemple de processus d'écriture de module comprend les étapes suivantes (le cas échéant, cliquez sur le nom du fichier ou du dossier pour afficher des détails supplémentaires sur l'étape) :

1. Créez un nouveau répertoire pour le module dans **zabbix/ui/modules/**.
2. Ajoutez le fichier [manifest.json](/devel/modules/file_structure/manifest) avec les métadonnées du module.
3. Créez le dossier *[views](/devel/modules/file_structure/views)* et définissez une ou plusieurs vues de module.
4. Créez le dossier *[actions](/devel/modules/file_structure/actions)* et définissez une ou plusieurs actions de module.
5. Créez le fichier Module.php (ou Widget.php pour les widgets de tableau de bord) et définissez les règles d'initialisation et de gestion des événements.
6. Créez le dossier *[assets](/devel/modules/file_structure/assets)* pour les fichiers JavaScript (à placer dans *assets/js*), les styles CSS (à placer dans *assets/css*) ou tout autre fichier supplémentaire.
7. Assurez-vous de spécifier les vues, actions et fichiers d'actifs requis dans le manifest.json.
8. [Enregistrez](/devel/modules/file_structure/register) le module dans l'interface Zabbix et commencez à l'utiliser.

:::notetip
Vous pouvez enregistrer et activer un module dès que vous créez le fichier manifest.json.
Une fois le module activé, vous pouvez prévisualiser immédiatement toutes les modifications apportées aux fichiers du module en actualisant l'interface Zabbix.
:::

[comment]: # ({/f1074788-1d438d3e})
