Skip to content

Forms

Adding a form

Copy page

Ask for a contact form and you get one that works. There is nothing to connect and no fields to configure first.

Forms are part of Pro. On a free site the Forms area is still there, but adding a form asks you to upgrade first, and a free site’s existing forms are left off the published site until it is on Pro again — nothing about them is deleted.

Asking

Add a contact form to this page: name, email, and a message.

The AI writes an ordinary form into the page, and it starts working the moment you publish.

The markup is the form

There is no separate list of fields kept somewhere else. The fields in the markup are the fields, so adding one means adding an input, and the AI does that by editing the page like any other change.

This is why a form can look like anything. It is your markup, styled by your site’s CSS, not a widget dropped into a slot.

Forms are documents

A form lives under Content → Forms, beside Pages and your collections. It has its own editor, drafts, revisions and trash, and it is published with everything else.

A page shows a form the same way it shows a block — by embedding it.

The two pieces that make it work

If you read the markup you will see two things you did not write:

<form method="post" action="{{ form.action }}">
  {% guard %}
  <label>Your name <input name="name" required></label>
  <button>Send</button>
</form>

{{ form.action }} is where the submission goes. {% guard %} is the spam protection — invisible to a person filling the form in, and enough to stop the bulk of automated submissions.

Leave both in. A form missing either will not accept anything.

Changing it

Ask. “Add a phone number field, not required” edits the markup. So does “make the button say Send enquiry” and “put the message box above the email”.

What you cannot ask for yet

File uploads, payment, and anything that needs the sender to have an account. See Where submissions go.

On this page