[comment]: # translation:outdated

[comment]: # aside:2

[comment]: # ({a2041013-7b40086b})
# Struttura del file del modulo

Tutto il codice relativo a un modulo è memorizzato in una singola directory all'interno della directory dei **moduli** del frontend di Zabbix (ad esempio *zabbix/ui/modules/*).

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

[comment]: # ({887796fe-dffd3e26})
### Albero dei file del modulo

````yaml
example_module_directory/ (obbligatorio)
manifest.json (obbligatorio) Metadati e definizione delle azioni.
Module.php Inizializzazione del modulo e gestione degli eventi.
actions/ File del controller delle azioni.
SomethingView.php
SomethingCreate.php
SomethingDelete.php
data_export/
ExportAsXml.php
ExportAsExcel.php
views/ File delle viste.
example.something.view.php
example.something.delete.php
assets/ Qualsiasi file aggiuntivo da utilizzare nelle viste. Deve essere specificato in manifest.json.
js/ File JavaScript utilizzati nelle viste.
example.something.view.js.php
css/ File CSS utilizzati nelle viste.
example.something.css
image.png Immagini utilizzate nelle viste.
example.something.file Qualsiasi file da utilizzare nelle viste.
````

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

[comment]: # ({f1074788-1d438d3e})
### Scrivere un modulo

Un esempio di processo di scrittura di un modulo consiste nei seguenti passaggi (ove disponibili, fare clic sul nome del file o della cartella per visualizzare ulteriori dettagli sul passaggio):

1. Creare una nuova directory per il modulo in **zabbix/ui/modules/**.
2. Aggiungere il file [manifest.json](/devel/modules/file_structure/manifest) con i metadati del modulo.
3. Creare la cartella *[views](/devel/modules/file_structure/views)* e definire una o più viste del modulo.
4. Creare la cartella *[actions](/devel/modules/file_structure/actions)* e definire una o più azioni del modulo.
5. Creare il file Module.php (o Widget.php per i widget della dashboard) e definire le regole di inizializzazione e gestione degli eventi.
6. Crea la cartella *[assets](/devel/modules/file_structure/assets)* per i file JavaScript (inseriscili in *assets/js*), gli stili CSS (inseriscili in *assets/css*) o qualsiasi altro file aggiuntivo.
7. Assicurati di specificare le viste, le azioni e i file asset richiesti nel file manifest.json.
8. [Registra](/devel/modules/file_structure/register) il modulo nel frontend di Zabbix e inizia a utilizzarlo.

:::notetip
Puoi registrare e abilitare un modulo non appena crei il file manifest.json.
Una volta abilitato il modulo, puoi visualizzare in anteprima tutte le modifiche apportate ai file del modulo aggiornando il frontend di Zabbix.
:::

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