[comment]: # translation:outdated

[comment]: # aside:2

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

Alle code met betrekking tot een module wordt opgeslagen in een enkele map in de map **modules** van uw Zabbix frontend-installatie (bijvoorbeeld *zabbix/ui/modules*).

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

[comment]: # ({887796fe-dffd3e26})
### Module bestanden structuur

````yaml
example_module_directory/                      (Vereist)
   manifest.json                               (Vereist) Metadata en actie definities.
   Module.php                                  Module-initialisatie en gebeurtenisverwerking.
   actions/                                    Actie controller bestanden.
       SomethingView.php
       SomethingCreate.php
       SomethingDelete.php
       data_export/
           ExportAsXml.php
           ExportAsExcel.php
   views/                                      View bestanden.
       example.something.view.php
       example.something.delete.php
   assets/                                     Eventuele aanvullende bestanden die in weergaven moeten worden gebruikt. Deze dienen ook in de manifest.json file gedefinieerd te worden.
       js/                                     JavaScript bestanden gebruikt in views.
           example.something.view.js.php
       css/                                    CSS bestanden gebruikt in views.
           example.something.css
        image.png                              Afbeeldingen gebruikt in views.
        example.something.file                 Alle andere files gebruikt in views.
````

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

[comment]: # ({f1074788-1d438d3e})
### Een module schrijven

Een voorbeeld van een schrijfproces voor een module bestaat uit de volgende stappen (indien beschikbaar, klik op de bestands- of mapnaam om aanvullende details over de stap te bekijken):

1. Maak een nieuwe map voor de module in **zabbix/ui/modules/**.
2. Voeg [manifest.json](/devel/modules/file_structure/manifest) bestand met modulemetadata toe.
3. Maak de map *[views](/devel/modules/file_structure/views)* aan en definieer een of meer moduleweergaven.
4. Maak de map *[actions](/devel/modules/file_structure/actions)* aan en definieer een of meer module-acties.
5. Maak het bestand Module.php (of Widget.php voor dashboardwidgets) en definieer regels voor initialisatie en gebeurtenisafhandeling.
6. Maak de map *[assets](/devel/modules/file_structure/assets)* voor JavaScript-bestanden (plaats in *assets/js*), CSS-stijlen (plaats in *assets/css*) of andere aanvullende bestanden.
7. Zorg ervoor dat u de vereiste weergaven, acties en activabestanden specificeert in manifest.json.
8. [Registreer](/devel/modules/file_structure/register) de module in Zabbix frontend en begin deze te gebruiken.

:::notetip
U kunt een module registreren en inschakelen zodra u het manifest.json-bestand maakt.
Zodra de module is ingeschakeld, kunt u onmiddellijk een voorbeeld van alle wijzigingen in modulebestanden bekijken door de Zabbix-frontend te vernieuwen.
:::

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