Drupal 11 Forms API で設定フォームを作る

概要

フォームはFormBaseまたはConfigFormBaseを継承し、入力検証と保存処理を分けます。サービスが必要ならコンストラクター注入を使います。

実施例

public function buildForm(array $form, FormStateInterface $form_state): array {
  $form['label'] = [
    '#type' => 'textfield',
    '#title' => $this->t('Label'),
    '#required' => TRUE,
  ];
  return $form;
}

注意点

権限、CSRF保護、入力値の検証を省略せず、保存前後の振る舞いをテストします。

参考: 公式ドキュメント