Ehi! Questa pagina è disponibile solo in Inglese
Answers to common questions about the Contact Forms plugin by Cimatti. For additional help, visit the support forum on WordPress.org.
Go to Contact Forms > Forms and click “Add New”. Drag fields from the field panel on the left into the form area. Configure each field by expanding it (click the field title or the arrow). The preview tab shows how the form will look. Click Save when done.
The plugin comes with common fields already defined: First Name, Last Name, Email (autoreply), Address, City, State/Province, Country (dropdown with all countries), Message, Telephone, Captcha, and Turnstile. You can also create custom fields from Contact Forms > Fields.
There are three ways:
.Go to Contact Forms > Fields. Click “Add Field” and choose the field type (text field, select, checkbox group, etc.), give it a name, and configure its options. Once saved, the field appears in the field panel of every form editor, ready to be dragged into any form.
Text Field, Text Area, Email, Autoreply Email, Telephone (with country prefix and E.164 validation), Checkbox, Select, Radio Buttons, Multiple Select, Multiple Checkboxes, Post Select, Multiple Post Checkboxes, Date, Color Picker, Hidden Value, File Upload, Password, Password and Confirmation, Custom HTML (for inserting static content in the form), Fieldset (for grouping fields), Captcha (reCAPTCHA v2 or math-based fallback), Cloudflare Turnstile, and Submit Button.
Yes. Every submission is stored in your WordPress database. You can view, search, filter, and export submissions from Contact Forms > Submissions. The table shows all form fields as sortable columns.
From the submissions list, use the “Export visible columns to Excel” or “Export all columns to Excel” buttons above the table. Combined with the filter and search options, you can export exactly the data you need. Only the columns visible in your screen options are included in the “visible columns” export.
Each submission can be assigned a lead status label such as “Lead”, “Job Candidate”, or any other custom status. This helps categorize and filter submissions. You can set the status from the single submission view. The lead status column is sortable and filterable in the submissions list.
First, check if your WordPress installation can send the password recovery email. Contact Forms uses the same wp_mail() function as WordPress core. If password recovery emails do not work either, the issue is with your server’s email configuration, not the plugin.
Common causes:
mail() function.To solve the issue, install an SMTP plugin (such as WP Mail SMTP, Post SMTP, or FluentSMTP) and configure it with your real email service credentials. SMTP plugins replace the unreliable default PHP mail transport with authenticated delivery.
Note: Contact Forms processes form submissions at plugins_loaded priority 20, giving SMTP plugins time to register their transport at the default priority 10.
Go to Contact Forms > Settings and set the “From” field using the standard email format:
Your Name <[email protected]>
This becomes the default for all forms. You can override it per form in the form’s Messages tab.
Use the same format in the confirmation email’s “From” field to control what the visitor sees as the sender. Make sure the email address matches a domain you control, or your hosted email service is configured to send on its behalf.
Tokens are placeholders you can use in email subjects, email bodies, success messages, and error messages. They are replaced with the actual values when the form is submitted.
Field tokens use the field ID as the token name:
{first_name}, {last_name}, {email}, {message}, etc.System tokens provide submission metadata:
| Token | Description |
|---|---|
{__submitted_day_month_year} |
Date when the form was submitted |
{__submitted_hour} |
Time the form was submitted |
{__created_day_month_year} |
Date when the form was first opened by the visitor |
{__created_hour} |
Time the form was first opened |
{__url} |
Full URL of the page with the form |
{__uri} |
Page path (e.g. /contact-us/) |
{__pid} |
Post/page ID |
{__fid} |
Form ID |
{__subid} |
Submission ID |
{__referrer} |
Referrer URL (previous page) |
{__ip} |
Visitor IP address |
{__anonymized_ip} |
Anonymized IP (last octet replaced) |
{__lang} |
Browser language |
{__locale} |
Full browser locale |
{__user_agent} |
Browser user agent string |
{__platform} |
Operating system |
{__submitted_txt} |
All submitted fields as plain text |
{__submitted_html} |
All submitted fields as HTML table |
{__submitted_json} |
All submitted fields as JSON |
{__review_submission_url} |
Admin URL to view this submission |
{__autoreply} |
Whether an autoreply email was sent (for conditional tags) |
{__autoreply_email} |
The autoreply email address |
{__confirmation_emails_message} |
Content of the confirmation email |
{__tentatives} |
Number of submission attempts |
{__submit_method} |
Submission method (AJAX or POST) |
Conditional tags let you include content in emails or messages only when a certain value is present. The syntax is:
[form_if {token} [content to show when token has a value]]
Example: include the referrer only when available:
[form_if {__referrer} [The visitor came from: {__referrer}]]
This avoids showing “Referrer: (empty)” when there is no referrer. Conditional tags can be used in admin notification emails, confirmation emails, and on-screen messages.
Three layouts:
Set the layout in the form’s Appearance tab. All layouts are responsive and accessible.
Each field label and default value can be overridden per form. When editing a form, expand a field and check “Override label” to change the label text. This lets you translate individual forms without affecting other forms that use the same field.
For example, you can change “First Name” to “Nombre”, “Message” to “Messaggio”, and “Submit” to “Invia” in a specific form while keeping the English labels in other forms.
The plugin is available in English, Italian, and Spanish. All plugin strings can be translated via WPML string translation (wpml-config.xml is included). To show a form in another language, duplicate the form and override the field labels with your translations.
Yes. You can customize the “required” error message at two levels:
%s as a placeholder for the field name.When editing a form, expand any field and you will find options for CSS Class and CSS ID. You can assign custom classes and IDs to the field wrapper, making it easy to target specific fields in your theme’s stylesheet. Radio buttons and checkboxes also support per-option CSS class and ID.
Yes. The form editor includes an Appearance tab where you can set colors, margins, border width, border radius, background color, padding, font size, and submit button styles for each form. These are applied as inline styles, so they work regardless of your theme’s CSS.
Yes. Version 2.0 was built to meet WCAG 2.2 AA requirements. Specific accessibility features include:
aria-required, aria-invalid, aria-describedby, aria-live regions.aria-busy).prefers-reduced-motion user preference.The European Accessibility Act (EAA) requires websites to meet accessibility standards starting June 2025. Contact Forms 2.0 was designed with WCAG 2.2 AA compliance, which covers the technical requirements referenced by the EAA. This includes proper form labeling, error identification, keyboard operability, and screen reader support.
You can set a global data retention period (days, months, or years) from Contact Forms > Settings. Each form can override the global setting. When submissions expire, they are cleaned up automatically via WP-Cron. You choose whether expired data is anonymized (personal data replaced with placeholders, keeping the record for statistics) or permanently deleted.
Yes. You can anonymize individual submissions from the single submission view, or use bulk actions in the submissions list to anonymize multiple submissions at once. Anonymization replaces personal data (name, email, IP, message, etc.) with placeholders while keeping the submission record so that your charts and statistics remain accurate.
Yes. The personal data exporter and eraser are both integrated. When a data export or erasure request is processed through WordPress (Tools > Export/Erase Personal Data), Contact Forms includes all relevant submission data. The eraser anonymizes the data by default, or permanently deletes it depending on your settings.
Nothing, by default. Your submission data stays in the database. If you want to clean up when deactivating, go to Contact Forms > Settings > Danger Zone and choose whether to keep data, anonymize it, or delete everything. This setting is only applied when you explicitly deactivate the plugin.
The Contact Forms settings page shows whether the Simple Cloudflare Turnstile plugin is installed and configured.
The Captcha field supports Google reCAPTCHA v2. To enable it:
If no reCAPTCHA keys are configured, the Captcha field uses a built-in math-based challenge instead.
Yes. The plugin includes a resilience mechanism for AJAX submissions: if the WordPress nonce expires (common when pages are served from cache), it automatically retries up to 3 times before falling back to a standard POST submission. This ensures forms work even when the cached page has an expired nonce.
Yes. A wpml-config.xml file is included for WPML string translation. Field labels and form messages can be translated through WPML’s string translation interface.
Yes. A native Gutenberg block is included. Search for “Contact Form” in the block inserter, select your form from the dropdown, and see the form fields listed in the editor. The block renders the full form on the frontend.
Contact Forms is compatible with most plugins, including popular SEO plugins, caching plugins, multilingual plugins, and page builders. If you find a specific conflict, check the support forum or report it there with details about the conflicting plugin and the behavior you observe.
Common causes of conflicts: JavaScript errors from other plugins (check the browser console), outdated plugin versions, or plugins that load their own version of jQuery or other libraries.
The default allowed extensions include: pdf, doc, docx, xls, xlsx, ppt, pptx, odt, ods, odp, txt, rtf, csv, jpg, jpeg, png, gif, webp, svg, heic, zip, rar, 7z, tar, gz. You can customize the allowed extensions per field from the field definition in Contact Forms > Fields. Server-side validation is case-insensitive.
The file size limit is determined by your PHP configuration (upload_max_filesize and post_max_size in php.ini). The maximum file size is displayed below the upload dropzone on the frontend. Contact your hosting provider if you need to change these limits.
Make sure you are running the latest version of WordPress and that all your plugins are up to date. A common cause is a JavaScript error from another plugin breaking the drag-and-drop library. Open your browser’s developer console (F12) and check for JavaScript errors. If you find errors from another plugin, try deactivating it temporarily to confirm the conflict.
Check these common causes:
where the number matches your form ID.Did not find the answer you were looking for? Visit the support forum on WordPress.org.