@php $mapsToLabel = [ 'name' => '名前', 'email' => 'メール', 'phone' => '電話', 'custom' => '追加項目', ]; $inputTypeOptionLabels = \App\Models\EventBookingFormField::inputTypeOptionLabels(); @endphp

申込フォーム項目

公開予約フォームに表示する項目を設定します。フォーム利用で出し分け、必須で入力必須にできます。 お名前・メールアドレスは申込処理に必要なため、常にフォームに表示されます(メールは必須固定)。 カスタム項目は行末から追加・削除できます。

@csrf @method('PUT')
@foreach($bookingFormFields as $f) @php $optionsText = ''; if (is_array($f->options_json) && count($f->options_json)) { $optionsText = implode("\n", $f->options_json); } $coreLocked = $f->maps_to === 'email'; $nameLocked = $f->maps_to === 'name'; @endphp @endforeach
名称 キー 格納先 フォーム利用 必須 入力形式 初期値・選択肢
{{ $f->field_key }} {{ $mapsToLabel[$f->maps_to] ?? $f->maps_to }} @if($coreLocked || $nameLocked) @else id.'.form_enabled', $f->form_enabled ? '1' : '0') === '1' ? 'checked' : '' }}> @endif @if($coreLocked) @else id.'.is_required', $f->is_required ? '1' : '0') === '1' ? 'checked' : '' }} {{ ($f->form_enabled || $nameLocked) ? '' : 'disabled' }}> @endif @if(! $f->is_preset) @endif

行の ↑↓ で表示順を変えてから保存すると、並びが反映されます。

@foreach($bookingFormFields->where('is_preset', false) as $f) @endforeach @push('scripts') @endpush