When a visitor sends the contact form of your store, the message is saved in your panel. This guide covers where to read those messages, how to receive them by email, and how a form you write yourself in a page works.
Turn forms on
In Settings, under Features, tick Contact Form and press Save. Web Site → Forms appears in the store's menu. The switch only opens that screen: the messages your customers send are saved either way.
Where the messages land
Every form of your site has its own record under Forms. The contact page of the default design creates its form by itself with the first message it receives, named Form - followed by the page's title, with contact as its slug.
Open a form to see its messages under Entries. Open an entry to read:
- Created At, when it arrived.
- The Page it was sent from.
- To Email and From Email, the addresses it was emailed to and from.
- Every field the visitor filled in, with its name and its Value.
Entries can only be read and deleted; nobody can edit them. Files a visitor sends land in the Formularios folder of your file library.
Receive each message by email
Open the form and edit it:
| Field | What it does |
|---|---|
| Name | How the form is called in your panel and in the email. |
| Slug | The name that links the form to its messages. Lowercase letters, numbers, - and /. Keep contact for the contact page's form. |
| To Email | The address that receives each new message. Empty, no email is sent. |
| From Email Field | The name of the field that holds the visitor's email, email on the contact page. The email then comes from the visitor's address, so replying to it answers them. |
The contact page's form only exists after its first message, so that message arrives without an email. To be emailed from the very first one, create the form yourself before: press Create Form, write contact as its Slug and fill in To Email.
A form of your own
With the HTML Editor on, you can write a form in any page, as explained in Pages, themes and backups. It works like the contact page's when:
- It is sent with
method="POST"to the form address of your store for a slug, such asaction="{{ route('team.form', ['slug' => $slug], false) }}", which uses the page's own slug. - Each field has a
name.
The form's own HTML decides what is checked: a field with required cannot be empty, minlength and maxlength set its length, and a field of type email must hold a valid email. When something fails, the visitor goes back to the page with the errors; when everything passes, they see The form was submitted successfully!
A message is accepted only when it is sent from an active page of your store: the home page, or the page whose slug is exactly the address the visitor was on.