{"id":323800,"date":"2026-06-13T09:34:49","date_gmt":"2026-06-13T09:34:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/contact-form-by-mailfix\/"},"modified":"2026-06-13T09:34:16","modified_gmt":"2026-06-13T09:34:16","slug":"mailfix-contact-forms","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/mailfix-contact-forms\/","author":23513134,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.45","stable_tag":"1.1.45","tested":"7.0","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Mailfix Contact Forms","header_author":"Mailfix","header_description":"Secure contact forms with a visual builder, stored messages, email notifications, logs, SMTP, and CSV export.","assets_banners_color":"fdfdfd","last_updated":"2026-06-13 09:34:16","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/www.mailfix.cz","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":27,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.45":{"tag":"1.1.45","author":"mailfix","date":"2026-06-13 09:34:16"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3570905,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500-cs.png":{"filename":"banner-1544x500-cs.png","revision":3570905,"resolution":"1544x500","location":"assets","locale":"cs","width":1544,"height":500},"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3570905,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250-cs.png":{"filename":"banner-772x250-cs.png","revision":3570905,"resolution":"772x250","location":"assets","locale":"cs","width":772,"height":250},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3570905,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"mailfix\/contact-form":{"name":"mailfix\/contact-form","title":"Mailfix Contact Form"}},"tagged_versions":["1.1.45"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3570905,"resolution":"1","location":"assets","locale":"","width":1274,"height":875},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3570905,"resolution":"2","location":"assets","locale":"","width":1284,"height":884},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3570905,"resolution":"3","location":"assets","locale":"","width":1273,"height":875},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3570905,"resolution":"4","location":"assets","locale":"","width":1273,"height":875},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3570905,"resolution":"5","location":"assets","locale":"","width":1273,"height":875}},"screenshots":{"1":"Dashboard with form statistics, recent messages, antispam activity, and setup status.","2":"Add new form screen with the form builder and live appearance preview.","3":"All messages inbox with unread, read, archive, and trash views.","4":"Message detail with readable submission data and related mail logs.","5":"Notifications editor with admin email, thank-you email, tokens, and email template previews."}},"plugin_section":[],"plugin_tags":[5832,109,358,1203,2253],"plugin_category":[54],"plugin_contributors":[266931],"plugin_business_model":[],"class_list":["post-323800","plugin","type-plugin","status-publish","hentry","plugin_tags-ajax-form","plugin_tags-antispam","plugin_tags-contact-form","plugin_tags-email-notifications","plugin_tags-form-builder","plugin_category-security-and-spam-protection","plugin_contributors-mailfix","plugin_committers-mailfix"],"banners":{"banner":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/banner-772x250.png?rev=3570905","banner_2x":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/banner-1544x500.png?rev=3570905","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/icon-256x256.png?rev=3570905","icon_2x":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/icon-256x256.png?rev=3570905","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/screenshot-1.png?rev=3570905","caption":"Dashboard with form statistics, recent messages, antispam activity, and setup status."},{"src":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/screenshot-2.png?rev=3570905","caption":"Add new form screen with the form builder and live appearance preview."},{"src":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/screenshot-3.png?rev=3570905","caption":"All messages inbox with unread, read, archive, and trash views."},{"src":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/screenshot-4.png?rev=3570905","caption":"Message detail with readable submission data and related mail logs."},{"src":"https:\/\/ps.w.org\/mailfix-contact-forms\/assets\/screenshot-5.png?rev=3570905","caption":"Notifications editor with admin email, thank-you email, tokens, and email template previews."}],"raw_content":"<!--section=description-->\n<p>Mailfix Contact Forms adds a WordPress-native contact form builder with saved submissions, notification emails, spam protection, and a clear admin workflow.<\/p>\n\n<p>Main features:<\/p>\n\n<ul>\n<li>Form field builder with live appearance preview.<\/li>\n<li>AJAX form submissions.<\/li>\n<li>Gutenberg block for inserting forms.<\/li>\n<li>Stored messages with unread\/read, archive, and trash views.<\/li>\n<li>Admin email notifications and optional thank-you emails.<\/li>\n<li>GDPR\/privacy consent checkbox with editable text and privacy policy link.<\/li>\n<li>HTML email templates with editable content.<\/li>\n<li>Mail logs with readable HTML previews.<\/li>\n<li>Custom SMTP settings for better deliverability.<\/li>\n<li>Honeypot protection, minimum submit time, rate limiting, optional Google reCAPTCHA v3, and blocked spam counters.<\/li>\n<li>CSV export for one form or all forms.<\/li>\n<li>Form appearance controls, including colors, field size, button alignment, and border radius.<\/li>\n<\/ul>\n\n<p>Additional features are available in a separate Mailfix Pro add-on from mailfix.cz. This WordPress.org plugin is fully functional on its own.<\/p>\n\n<h3>External services<\/h3>\n\n<h4>Google reCAPTCHA<\/h4>\n\n<p>This plugin can optionally use Google reCAPTCHA v3 for spam protection when the site administrator enables reCAPTCHA and enters Google reCAPTCHA keys in the plugin settings.<\/p>\n\n<p>When reCAPTCHA is enabled for a form, the plugin loads the Google reCAPTCHA script from <code>www.google.com<\/code> on pages where that form is displayed. When a visitor submits the form, the plugin sends the reCAPTCHA response token, the configured secret key, and the visitor IP address to Google's <code>siteverify<\/code> endpoint to validate the submission. The plugin also offers an administrator-only secret key check that sends the configured secret key and a test response token to Google.<\/p>\n\n<p>Google reCAPTCHA is provided by Google LLC. Terms: https:\/\/policies.google.com\/terms Privacy Policy: https:\/\/policies.google.com\/privacy<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install it through the WordPress admin.<\/li>\n<li>Activate the plugin from the Plugins screen.<\/li>\n<li>Open <code>Forms<\/code> in the admin and create a new form.<\/li>\n<li>Copy the shortcode from the form editor.<\/li>\n<li>Insert the shortcode into a page, post, or compatible page builder.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20send%20data%20outside%20my%20website%3F\"><h3>Does the plugin send data outside my website?<\/h3><\/dt>\n<dd><p>By default, no. Submitted messages are stored locally in the WordPress database and emails are sent through <code>wp_mail()<\/code> or your configured SMTP server. If Google reCAPTCHA v3 is enabled, the reCAPTCHA token is verified through Google reCAPTCHA.<\/p><\/dd>\n<dt id=\"how%20do%20i%20insert%20a%20form%20into%20a%20page%3F\"><h3>How do I insert a form into a page?<\/h3><\/dt>\n<dd><p>Copy the shortcode from the form editor, for example <code>[mailfix_form id=\"123\"]<\/code>, and paste it into a page, post, or compatible builder.<\/p><\/dd>\n<dt id=\"where%20do%20i%20configure%20email%20notifications%3F\"><h3>Where do I configure email notifications?<\/h3><\/dt>\n<dd><p>Open <code>Forms &gt; Notifications<\/code>, choose a form, and configure recipients, sender details, the admin notification, and the optional thank-you email.<\/p><\/dd>\n<dt id=\"what%20personal%20data%20does%20the%20plugin%20store%3F\"><h3>What personal data does the plugin store?<\/h3><\/dt>\n<dd><p>The plugin stores submitted form fields, submission date, an IP hash, and the user agent for administration and basic security checks. The IP hash is not a readable IP address. If Google reCAPTCHA v3 is enabled, the verification token is checked through Google reCAPTCHA.<\/p><\/dd>\n<dt id=\"how%20can%20i%20test%20email%20delivery%3F\"><h3>How can I test email delivery?<\/h3><\/dt>\n<dd><p>Open <code>Forms &gt; Notifications<\/code>, choose a form, and send a test email. The result is stored in the mail log. A <code>sent<\/code> status means WordPress accepted the email for sending; actual delivery still depends on the mail server and domain DNS.<\/p><\/dd>\n<dt id=\"does%20the%20form%20work%20without%20javascript%3F\"><h3>Does the form work without JavaScript?<\/h3><\/dt>\n<dd><p>Frontend submissions are designed as AJAX forms and require JavaScript in the visitor's browser.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.45<\/h4>\n\n<ul>\n<li>Removed unused helper methods and stale admin CSS selectors.<\/li>\n<\/ul>\n\n<h4>1.1.44<\/h4>\n\n<ul>\n<li>Fixed field radius consistency across frontend, form preview, and choice fields.<\/li>\n<\/ul>\n\n<h4>1.1.43<\/h4>\n\n<ul>\n<li>Added an appearance option to show or hide the form title.<\/li>\n<\/ul>\n\n<h4>1.1.42<\/h4>\n\n<ul>\n<li>Improved sticky preview behavior when editing appearance settings on new forms.<\/li>\n<\/ul>\n\n<h4>1.1.41<\/h4>\n\n<ul>\n<li>Added shortcode copying to the forms list table.<\/li>\n<li>Improved the form editor layout so appearance settings stay closer to the live preview.<\/li>\n<\/ul>\n\n<h4>1.1.40<\/h4>\n\n<ul>\n<li>Reviewed WordPress.org guideline wording and clarified that the free plugin is fully functional on its own.<\/li>\n<\/ul>\n\n<h4>1.1.39<\/h4>\n\n<ul>\n<li>Shortened older changelog entries for a cleaner WordPress.org readme.<\/li>\n<\/ul>\n\n<h4>1.1.38<\/h4>\n\n<ul>\n<li>Protected automatic message read-state changes with a nonce.<\/li>\n<li>Hardened reCAPTCHA response handling and duplicate form redirects.<\/li>\n<\/ul>\n\n<h4>1.1.37<\/h4>\n\n<ul>\n<li>Tightened request handling for admin notices, notification settings, SMTP tests, and frontend submissions.<\/li>\n<li>Sanitized local request arrays before passing them into internal helpers.<\/li>\n<\/ul>\n\n<h4>1.1.36<\/h4>\n\n<ul>\n<li>Sanitized structured form editor settings before extension filters run.<\/li>\n<li>Escaped custom field HTML returned by extension filters with a strict allowlist.<\/li>\n<li>Passed sanitized email preview context to extension filters.<\/li>\n<\/ul>\n\n<h4>1.1.35<\/h4>\n\n<ul>\n<li>Reworked message and mail log list queries to avoid dynamically interpolated SQL fragments.<\/li>\n<li>Reworked setup wizard shortcode detection to avoid interpolated IN placeholders.<\/li>\n<li>Tightened sanitization for submitted field values, SMTP\/reCAPTCHA settings, and onboarding redirects.<\/li>\n<\/ul>\n\n<h4>1.1.34<\/h4>\n\n<ul>\n<li>Improved translation cleanup and clarified rate-limit help text.<\/li>\n<\/ul>\n\n<h4>1.1.33<\/h4>\n\n<ul>\n<li>Rechecked custom SQL reads and raised the minimum WordPress version to 6.2.<\/li>\n<\/ul>\n\n<h4>1.1.32<\/h4>\n\n<ul>\n<li>Refined extension hooks for external add-ons.<\/li>\n<\/ul>\n\n<h4>1.1.31<\/h4>\n\n<ul>\n<li>Rechecked message, log, dashboard, and CSV database reads.<\/li>\n<\/ul>\n\n<h4>1.1.30<\/h4>\n\n<ul>\n<li>Cleaned package contents and prepared SQL reads.<\/li>\n<\/ul>\n\n<h4>1.1.29<\/h4>\n\n<ul>\n<li>Added a shortcode copy box below the Publish panel.<\/li>\n<\/ul>\n\n<h4>1.1.28<\/h4>\n\n<ul>\n<li>Standardized the public plugin brand spelling.<\/li>\n<\/ul>\n\n<h4>1.1.27<\/h4>\n\n<ul>\n<li>Fixed notification preview compatibility and Czech translations.<\/li>\n<\/ul>\n\n<h4>1.1.26<\/h4>\n\n<ul>\n<li>Cleaned stale translation strings.<\/li>\n<\/ul>\n\n<h4>1.1.25<\/h4>\n\n<ul>\n<li>Renamed the plugin, aligned the text domain, and documented Google reCAPTCHA.<\/li>\n<\/ul>\n\n<h4>1.1.24<\/h4>\n\n<ul>\n<li>Improved Gutenberg block controls.<\/li>\n<\/ul>\n\n<h4>1.1.23<\/h4>\n\n<ul>\n<li>Split editor, frontend, notification, onboarding, message, settings, and admin action code into focused traits.<\/li>\n<\/ul>\n\n<h4>1.1.22<\/h4>\n\n<ul>\n<li>Split SMTP handling and CSV export into dedicated classes.<\/li>\n<\/ul>\n\n<h4>1.1.21<\/h4>\n\n<ul>\n<li>Hardened frontend option validation and proxy IP handling.<\/li>\n<\/ul>\n\n<h4>1.1.20<\/h4>\n\n<ul>\n<li>Refined Plugin Check annotations for mail log queries.<\/li>\n<\/ul>","raw_excerpt":"Secure contact form with a visual form builder, AJAX submissions, stored messages, email notifications, mail logs, SMTP settings, and CSV export.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/323800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=323800"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mailfix"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=323800"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=323800"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=323800"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=323800"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=323800"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=323800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}