Form
Send form data via email or webhooks
The Form Component is a powerful form solution allowing you to send form submissions via your own email server or via a webhook.
Server Requirements
The Form Component in Elements requires PHP 8.1 or newer. You must ensure all pages with a Form use a .php extension.
PHP Server Check
Ideally you should be running PHP 8.4 or newer, but as a minimum you need 8.1. You can easily check this by appending ?apicheck
to any page with a Form, for example:
my-website.com/contact/?apicheck
Form Compatibility Checklist
Form Components
The following Components must be placed inside of the "Form" Component wrapper to function correctly.
Attachment
Allows users to attach files when sending the form, can be limited in size or specific file type.
Checkbox
Error
Display an error message on form submit.
Input
Label
Radio
Submit
Another component such as a Button or Image can be placed inside this component to trigger the Form Submit function.
Success
Display a success message on form submit.
Form Setup
To recive emails via the Form Component you will need to enter your Email server details. Here’s a breakdown of what each field means and what you’ll need to configure to make it work properly.
Host
Email host address. e.g. mail.yourdomain.com
Port
The port number the email server uses for sending messages. - 587: For TLS encryption (most common) - 465: For SSL encryption. - 25: For non-encrypted emails (not recommended).
Encryption
Choose the encryption method required by your email provider. None, TLS, SSL
Username
The email address or username for the SMTP account you’re using to send emails. e.g. admin@yourdomain.com.
Password
The password for your SMTP account.
Subject
The subject of the email you'll receive. e.g. "Website Feedback"
To Name
The name the email will be addressed to. e.g. "Team Realmac"
To Address
The email address the form submission will be sent to. e.g. "support@realmacsoftware.com"
Reply-to Address
In order for Elements to correctly set the “reply-to” header in the outgoing email, the form field name must be set to email, all lowercase.
Form Webhooks
A webhook allows your form submissions to be sent directly to another service, like a database, CRM, or automation tool without needing to check emails or manually process the data. By sending form data to a webhook, you can trigger workflows in Zapier, Make, or Pipedream, making it easy to do the following (and so much more):
• Add a new lead to Airtable or Google Sheets
• Send a follow-up email through Mailchimp or ConvertKit
• Notify your team in Slack or Discord
• Create support tickets in Zendesk or Trello
There's really no limit to what you can do with the new webhooks feature. Whether you’re building a customer support system, a lead capture form, or a dynamic survey that feeds into a database, webhooks unlock powerful automation and customization that email simply can’t match.
Testing Webhooks Locally
Webhook submissions require a server environment, so once you publish the page to a server—either a remote server or a local one—you should find the submission works as expected.
If you want to test everything locally, you’ll need to set up a local web server on your Mac. We recommend ServBay for this.
Here’s a quick guide:
Install ServBay
Publish your Elements site to a local folder
In ServBay, create a new site and point the root directory to your published folder
Open the site in your browser through ServBay for full local testing—including Forms and webhooks
Last updated
Was this helpful?