Descriere
GlobalDev Contact Forms is a self-contained visual form builder for WordPress. It stores every valid submission in your WordPress database before attempting email delivery, making lead counts easier to verify against Google Ads, GA4, Meta, TikTok, or another analytics platform.
There is no Pro edition and no paid-feature wall. All included features are available immediately.
Visual form builder
- Professional drag-and-drop administration interface
- Per-form Language & Messages controls for multilingual websites
- One-click language presets for English, Romanian, German, French, Spanish, and Italian
- JSON field export/import directly in the Build tab
- Unlimited forms and fields
- Field duplication and reordering
- Conditional show/hide rules with multiple conditions and ALL/ANY matching
- Chained conditions for multi-step branches
- Radio and checkbox layouts: stacked, inline, buttons, and tab-style choices
- Conditional HTML messages displayed inline or in a modal popup
- Success messages displayed below the form or in a modal popup
- Information-only endpoints that suppress and reject online submission
- Standard and conversational form experiences
- In-dashboard preview
- Responsive field widths
- Per-form input styles: outlined, filled, and underline
- Full field color controls for labels, text, placeholders, backgrounds, borders, and focus states
- Per-form field-label font-size control
- Input height, border width, corner radius, and field spacing controls
- Submit button styles: solid, outline, and gradient
- Submit button colors, width, alignment, and independent corner radius
Included field types
- Single-line text
- Phone
- Number
- Date
- Paragraph text
- Dropdown
- Radio buttons
- Checkboxes
- Consent checkbox
- HTML content
- Conditional submit button
- Hidden field
Lead management
- Every valid submission is stored locally before email is attempted
- Unread/read entry status
- Entry detail screen
- CSV export for all entries or the active form/status filters, with Excel-safe values
- Notification status showing whether WordPress accepted or rejected the email request
- Visitor IP address, browser, source page, landing page, and attribution details in stored entries
Email notifications
- Administrator notifications
- Multiple recipients
- Reply-To mapped to a submitted email field
- Automatic submitter confirmation emails
- Merge tags for form and field values
- Test-email tool
- Administrator emails include entry metadata: IP address, browser, source page, landing page, and attribution values
Conversion and advertising tools
After an entry is stored, the plugin dispatches:
gdcf_submission_success
It also pushes this event to window.dataLayer:
gdcf_form_submission_success
The event includes the form ID, entry ID, and captured attribution parameters. This can be used as a Google Tag Manager Custom Event trigger for Google Ads, GA4, Meta Pixel, TikTok Pixel, or other tags.
The plugin captures supported attribution values from the landing URL and keeps them for the browser session:
- utm_source
- utm_medium
- utm_campaign
- utm_term
- utm_content
- gclid
- gbraid
- wbraid
- fbclid
- ttclid
Built-in and Google anti-spam protection
- WordPress nonce verification
- Honeypot field
- Minimum form-completion time
- Per-form rate limiting using a privacy-preserving IP hash
- Server-side field validation
- Google Cloud reCAPTCHA checkbox
- Google Cloud reCAPTCHA invisible score
- Compatibility with existing legacy reCAPTCHA v2 checkbox, v2 invisible, and v3 keys
- Server-side token, hostname, action, and score verification where applicable
Google reCAPTCHA is disabled by default. Google scripts are loaded only on pages containing a GlobalDev form after a complete configuration is enabled.
External services
Google reCAPTCHA is an optional external service and is disabled by default. When enabled, the plugin loads a Google reCAPTCHA JavaScript file on pages containing a GlobalDev form. The browser communicates with Google to obtain a verification token. The website backend then sends the token, configured site key, and expected form action where applicable to Google’s verification or assessment endpoint. The plugin does not include submitted contact-form field values in that request.
For Google Cloud reCAPTCHA modes, the website owner supplies a Google Cloud project ID and API key. For legacy compatibility modes, the website owner supplies an existing classic secret key.
Service information and policies:
- Google reCAPTCHA: https://cloud.google.com/security/products/recaptcha
- Google Cloud Terms: https://cloud.google.com/terms/
- Google Cloud Data Processing Addendum: https://cloud.google.com/terms/data-processing-addendum/
- Google Privacy Policy: https://policies.google.com/privacy
Privacy
GlobalDev Contact Forms stores submitted form data in the local WordPress database. It also stores the visitor IP address reported by the web server, a one-way IP hash used for rate limiting, the source page, browser user-agent, and supported advertising attribution parameters when available. Administrator notification emails include these entry details.
The plugin never sends form entries to GlobalDev. Email notifications are passed to the website’s WordPress mail system. If Google reCAPTCHA is enabled, Google processes browser telemetry and verification data as described in the External services section. Site owners are responsible for appropriate privacy notices, consent configuration, retention policies, and lawful processing terms for their jurisdiction.
Capturi ecran






Instalare
- Upload the plugin ZIP in Plugins > Add New > Upload Plugin.
- Activate GlobalDev Contact Forms.
- Open GlobalDev Forms in the WordPress administration menu.
- Edit the starter contact form or create a new form.
- Optionally configure Google reCAPTCHA under GlobalDev Forms > Settings.
- Copy the generated shortcode into a page or page-builder shortcode widget.
- Submit a test entry and verify it in GlobalDev Forms > Entries.
- Configure SMTP on production websites if the hosting mail system is unreliable.
Întrebări frecvente
-
Are email notifications included for free?
-
Yes. Administrator notifications, multiple recipients, Reply-To mapping, automatic submitter confirmations, and the test-email tool are included.
-
Does the plugin store entries if email delivery fails?
-
Yes. A valid entry is stored first. The plugin then asks WordPress to send the configured email and records whether WordPress accepted or rejected that request.
-
Does “Sent” guarantee delivery to the inbox?
-
No. It means WordPress accepted the message for delivery. Final delivery depends on the hosting mail server, DNS authentication, spam filtering, and SMTP configuration.
-
Do I need an SMTP plugin?
-
Not always, but SMTP is recommended for production websites. WordPress hosting mail can be unreliable or poorly authenticated.
-
What is conversational mode?
-
Conversational mode shows one question at a time with progress, Back and Next controls, Enter-key navigation, and the final submit button on the last question.
-
How does conditional logic work?
-
Enable conditional logic on a field, choose a source field, then select whether the field should be shown or hidden when the source value matches the configured rule. Supported operators include equals, does not equal, contains, does not contain, is empty, and is not empty.
Each field has one direct rule. More complex branches can be created by chaining fields: a conditional field can act as the source for another conditional field. Conditions are checked in the browser and again on the server.
-
Can a conditional field be required?
-
Yes. A required field is validated only while its condition is active. Inactive conditional fields are disabled in the browser and excluded from server-side validation and stored entry data.
-
How do I track a form conversion in Google Tag Manager?
-
Create a Custom Event trigger using
gdcf_form_submission_success. The event is pushed only after the form entry has been stored successfully. -
Does the plugin send data to GlobalDev or another remote service?
-
The plugin never sends form entries to GlobalDev. Forms, entries, settings, and attribution data remain in the website’s WordPress database. Email delivery uses the website’s own WordPress mail system.
When Google reCAPTCHA is enabled, the visitor’s browser loads Google reCAPTCHA scripts and a verification token is sent to Google for server-side assessment. The submitted contact-form field values are not included in the reCAPTCHA verification request.
-
Which Google reCAPTCHA types are supported?
-
The plugin supports both visible and invisible protection: Google Cloud reCAPTCHA Checkbox, Google Cloud reCAPTCHA Invisible Score, and compatibility modes for existing classic reCAPTCHA v2 checkbox, v2 invisible, and v3 keys.
-
Which reCAPTCHA mode should I choose?
-
Use Google Cloud reCAPTCHA Invisible Score for the lowest visitor friction. Use the Checkbox mode when you want an explicit “I’m not a robot” interaction. Legacy modes are intended for websites that already have classic reCAPTCHA keys.
-
Does enabling reCAPTCHA affect every form?
-
Yes. The selected global reCAPTCHA mode protects every published GlobalDev form. When reCAPTCHA is disabled or the configuration is incomplete, Google scripts are not loaded.
-
Can I delete all plugin data during uninstall?
-
Yes. Enable the uninstall data-removal option under GlobalDev Forms > Settings before uninstalling the plugin.
-
Can different forms use different languages?
-
Yes. Open a form and use the Language & Messages tab. You can apply a built-in English, Romanian, German, French, Spanish, or Italian preset, then customize any visitor-facing navigation, validation, submission, modal, accessibility, or anti-spam text. Field labels, options, placeholders, submit text, and success text remain under your direct control in the builder.
Recenzii
Nu există nicio verificare pentru acest modul.
Contributori și dezvoltatori
„GlobalDev Contact Forms” este un software open-source. La acest modul au contribuit următoarele persoane.
ContributoriTradu „GlobalDev Contact Forms” în limba ta.
Te interesează dezvoltarea?
Răsfoiește codul, vezi depozitarul SVN, sau abonează-te la jurnalul de dezvoltare prin RSS.
Istoric modificări
0.4.11
- Added an always-available Export CSV action to the Entries screen.
- CSV exports now support all entries as well as the active form and read/unread filters.
- Added form ID and form name columns when exporting across multiple forms.
- Preserves historical submitted field keys in exports even when a form was edited or deleted later.
- Extended spreadsheet-formula protection to every exported entry value.
0.4.10
- Fixed frontend field widths so 25/33/50/66/75/100 percent settings use authoritative flex-basis, width, and max-width values.
- Added theme/page-builder isolation so external generic CSS cannot shrink fields configured as 100 percent width.
- Fixed malformed custom HTML being able to wrap subsequent fields and break the form grid by balancing allowed HTML tags on save and render.
- Updated the admin preview width model to match the frontend more closely.
0.4.9
- Added per-field CSS ID and CSS classes controls in a dedicated CSS targeting section.
- Custom selectors are applied to the frontend field wrapper so fields can be targeted directly from theme or custom CSS.
- Multiple custom classes are supported and sanitized safely; optional leading # / . characters are normalized.
- Field imports and exports preserve CSS targeting settings.
- Duplicating a field keeps its custom classes but clears its CSS ID to avoid duplicate IDs.
0.4.8
- Added multiple conditions per field with an Add condition control in the form builder.
- Added ALL/ANY matching so conditional fields can require every rule or any rule.
- Preserved compatibility with forms created with the previous single-condition format.
- Fixed radio and checkbox button/tab layouts so theme-isolation rules no longer force the native circle or checkbox to remain visible.
- New radio fields default to the Buttons choice layout.
0.4.7
- Fixed required radio groups incorrectly remaining invalid after a visitor selected a different option following an earlier validation attempt.
- Radio-group custom validation now clears across every radio with the same field name.
- Added defensive theme isolation for GlobalDev radio/checkbox controls so broad theme rules cannot hide or resize them.
- Rebuilt modal close controls with a theme-proof icon-only button and strictly scoped popup CSS.
- Isolated the success popup action button from generic theme and page-builder button styles while preserving each form’s configured colors and button style.
0.4.6
- Added a per-form Success message display setting.
- Success messages can now appear below the submitted form or in a polished dismissible modal popup.
- The success popup inherits each form’s accent, button, text, background, border-radius, and button-style settings for a consistent theme match.
- Added a responsive success state with an animated confirmation icon, themed action button, keyboard dismissal, focus return, and reduced-motion support.
- Kept below-form success messages as the backward-compatible default for existing forms.
- Added popup support to the defensive AJAX fallback runtime used when frontend optimizers omit the main script.
0.4.5
- Added a per-form language selector with bundled English, Romanian, German, French, Spanish, and Italian visitor-message presets.
- Applying a language preset updates all Language & Messages values while keeping them editable.
- The selected form language is output as an HTML
langattribute on the rendered form. - Added JSON export and import for form fields directly in the Build tab.
- Field imports preserve supported field configuration and conditional references, then pass through the existing server-side sanitization when the form is saved.
0.4.4
- Improved AJAX submission compatibility for forms rendered through nested shortcodes, landing-page settings, page builders, and dynamically inserted content.
- Loads the frontend form runtime during the normal enqueue phase on public pages.
- Protects the form and reCAPTCHA scripts from Cloudflare Rocket Loader reordering.
- Embeds the AJAX endpoint in each form and adds safer handling for blocked, cached, or non-JSON AJAX responses.
- Adds a guarded submission fallback that prevents native navigation to admin-ajax.php if an optimizer omits the main frontend script.
- Preserves validation, inline success and error messages, form reset, configured redirects, custom success events, and the gdcf_form_submission_success Data Layer event in fallback mode.
- Initializes forms inserted after page load through a MutationObserver.
0.4.2
- Added a Submit Button field to the visual builder.
- Submit Button fields support the same conditional show/hide rules as other fields.
- Added a per-form field-label font-size control with live preview.
- Preserved the existing automatic submit button for forms that do not contain a Submit Button field.
0.4.1
- Replaced the radio and checkbox group
fieldset/legendwrapper with a label-based group header while keeping every choice inside its own label. - Added a Language & Messages tab with per-form control over visitor-facing interface, validation, submission, modal, accessibility, and reCAPTCHA messages.
- Added
{field}replacement support for translated validation messages. - Added per-form browser validation messages and server-side validation messages so forms on the same website can use different languages.
- Added per-form language support for conversational navigation, loading text, dropdown fallback text, consent values, and anti-spam responses.
0.4.0
- Added conditional show and hide rules for form fields and HTML content.
- Added chained condition evaluation in both the browser and server-side validation.
- Added stacked, inline, button, and tab-style layouts for radio buttons and checkboxes.
- Added conditional HTML modals for informational branches.
- Added information-only endpoints that hide the submit action and reject direct submission attempts.
- Hidden conditional fields are disabled in the browser and excluded from server-side required validation and stored entries.
- Conditional logic works in both standard and conversational form modes.
- Per-form visitor messages can be edited in any language.
0.3.2
- Stores and displays the validated visitor IP address for new entries.
- Adds IP address, browser, source page, landing page, and attribution details to administrator notification emails.
- Adds IP address, source page, and browser columns to CSV exports.
- Keeps the one-way IP hash for rate limiting while documenting raw IP storage for site privacy notices.
0.3.1
- Fixed the frontend
api.render is not a functionreCAPTCHA error. - Waits for the exact Google API methods required by checkbox, invisible challenge, and score modes.
- Prevents duplicate widget initialization and removes partially rendered widgets before a safe retry.
- Loads invisible reCAPTCHA lazily on submission instead of displaying initialization errors during normal page loading.
- Clarified the difference between Standard reCAPTCHA site/secret keys and Google Cloud Enterprise credentials.
0.3.0
- Added a professional per-form styling panel to the visual builder.
- Added outlined, filled, and underline input styles.
- Added independent colors for labels, input text, placeholders, backgrounds, borders, and focus states.
- Added input height, border width, corner radius, and field spacing controls.
- Added solid, outline, and gradient submit button styles.
- Added button background, hover, text, radius, width, and alignment controls.
- Updated the builder preview to render all appearance settings before publishing.
0.2.3
- Fixed a frontend fatal error caused by calls to a nonexistent required() PHP function.
- Rendered native HTML required attributes safely for text, textarea, select, radio, and consent fields.
- Added regression validation covering every frontend field type.
0.2.2
- Resolved the remaining Plugin Check warnings reported against version 0.2.1.
- Documented and scoped the no-cache exceptions for dedicated custom-table writes and uninstall schema operations.
- Added the plugin version to the Google reCAPTCHA script enqueue call.
0.2.1
- Addressed the security, database, escaping, internationalization, and resource-loading findings reported against version 0.2.0.
- Added stricter request sanitization and a generic frontend nonce verified before form-specific input is read.
- Added targeted documentation for unavoidable custom-table and CSV-stream operations.
- Improved Google reCAPTCHA hostname verification and API-key transport.
- Added non-blocking script loading and readable, non-minified stylesheet sources.
- Removed unnecessary rewrite-rule flushing and legacy translation loading.
0.2.0
- Added Google Cloud reCAPTCHA Checkbox support.
- Added Google Cloud reCAPTCHA Invisible Score support with configurable threshold.
- Added compatibility with existing classic reCAPTCHA v2 checkbox, v2 invisible, and v3 keys.
- Added server-side token, hostname, expected-action, and score validation.
- Added a professional reCAPTCHA settings panel with conditional controls and integration status.
- Added conversational-form support for the visible checkbox step.
- Added external-service and privacy documentation for Google reCAPTCHA.
0.1.2
- Suppressed unrelated third-party admin notices across every GlobalDev Contact Forms screen.
- Added a shared plugin-page body class and preserved GlobalDev Forms notices through a dedicated marker class.
0.1.1
- Prevented third-party WordPress admin notices from being inserted into the visual builder field palette.
- Added a dedicated builder-screen body class and accessible page heading for stable notice placement.
0.1.0
- Initial release.
- Added visual drag-and-drop form builder.
- Added standard and conversational form modes.
- Added stored entries, read status, entry details, and CSV export.
- Added administrator and submitter email notifications.
- Added notification status and test-email tool.
- Added UTM and ad click-ID attribution.
- Added GTM/dataLayer and JavaScript success events.
- Added nonce, honeypot, timing, rate-limit, and server-side validation protections.
- Added responsive frontend styling and per-form appearance controls.
