[comment]: # translation:outdated

[comment]: # aside:2

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

# モジュールファイルの構造

モジュールに関連するすべてのコードは、Zabbixフロントエンドインストールの**modules**ディレクトリ内の1つのディレクトリに保存されます (例: *zabbix/ui/modules*)。

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

[comment]: # ({887796fe-dffd3e26})
### モジュールファイルツリー

````yaml
example_module_directory/          (必須)
   manifest.json                   (必須)   メタデータとアクションの定義。
   Module.php                                  モジュールの初期化とイベント処理。
   actions/                                    アクションコントローラーファイル。
       SomethingView.php
       SomethingCreate.php
       SomethingDelete.php
       data_export/
           ExportAsXml.php
           ExportAsExcel.php
   views/                                      ビューファイル。
       example.something.view.php
       example.something.delete.php
   assets/                                     ビューで使用する追加ファイル。manifest.jsonで指定する必要があります。
       js/                                     ビューで使用するJavaScriptファイル。
           example.something.view.js.php
       css/                                    ビューで使用するCSSファイル。
           example.something.css
        image.png                              ビューで使用する画像。
        example.something.file                 ビューで使用する任意のファイル。
````

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

[comment]: # ({f1074788-1d438d3e})
### モジュールの作成

サンプルモジュールの作成の流れは次の通りです (利用可能な場合は、ファイル名またはフォルダー名をクリックすると、手順の詳細が表示されます)。

1. **zabbix/ui/modules/**内にモジュール用の新しいディレクトリを作成します。
2. モジュールメタデータを含む[manifest.json](/devel/modules/file_structure/manifest)ファイルを追加します。
3. *[views](/devel/modules/file_structure/views)*フォルダーを作成し、モジュールビューを定義します。
4. *[actions](/devel/modules/file_structure/actions)*フォルダーを作成し、モジュールアクションを定義します。
5. Module.php (またはダッシュボードウィジェットの場合はWidget.php) ファイルを作成し、初期化およびイベント処理ルールを定義します。
6. JavaScriptファイル (*assets/js*に配置)、CSSスタイル (*assets/css*に配置)、またはその他の追加ファイル用の*[assets](/devel/modules/file_structure/assets)*フォルダーを作成します。
7. manifest.jsonで必要なビュー、アクション、アセットファイルを指定していることを確認します。
8. Zabbixフロントエンドでモジュールを[登録](/devel/modules/file_structure/register)して、使用を開始します。

:::notetip
manifest.jsonファイルを作成するとすぐに、モジュールを登録して有効にすることができます。
モジュールが有効になると、Zabbixフロントエンドを更新することで、モジュールファイルに加えられたすべての変更をすぐにプレビューできます。
:::

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