{"id":304014,"date":"2026-05-07T14:05:37","date_gmt":"2026-05-07T14:05:37","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/advanced-conditional-fields-for-elementor-forms\/"},"modified":"2026-08-30T05:51:00","modified_gmt":"2026-08-30T05:51:00","slug":"conditional-logic-fields-for-elementor-forms","status":"publish","type":"plugin","link":"https:\/\/az.wordpress.org\/plugins\/conditional-logic-fields-for-elementor-forms\/","author":14456348,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.0","stable_tag":"1.2.0","tested":"7.1","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"TNT Conditional Logic Fields for Elementor Forms","header_author":"ThemesnTemplates","header_description":"Show\/hide Elementor Pro form fields with powerful conditional logic. Pro: Conditional Redirect, Conditional Email, Conditional Submit Button & Form Field Groups.","assets_banners_color":"340d42","last_updated":"2026-08-30 05:51:00","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/themesntemplates.com\/wordpress-plugins\/conditional-logic-fields-for-elementor-forms\/","header_author_uri":"https:\/\/themesntemplates.com\/","rating":5,"author_block_rating":0,"active_installs":30,"downloads":514,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"palpatel","date":"2026-05-07 14:05:00","revision":3525617},"1.0.2":{"tag":"1.0.2","author":"palpatel","date":"2026-06-28 08:08:47","revision":3588576},"1.2.0":{"tag":"1.2.0","author":"palpatel","date":"2026-08-30 05:51:00","revision":3672072}},"upgrade_notice":{"1.1.1":"<p>Bug fix: conditions comparing against a value containing &amp;, , or a quote character now match correctly (the decoded value was previously computed but never used).<\/p>","1.1.0":"<p>Adds Auto-Fill Value and URL\/cookie-based conditions, updates compatibility to WordPress 7.1 and Elementor\/Elementor Pro 4.2.2, and removes a settings-page routine that could suppress other plugins&#039; admin notices.<\/p>","1.0.2":"<p>Recommended update. Improves compatibility with WordPress 7.0, Elementor 4.1.4, and PHP 8.x. Adds proper translation loading and strengthens security on external links.<\/p>","1.0.1":"<p>Initial release of TNT Conditional Logic Fields for Elementor Forms.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3525617,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3588496,"resolution":"1544x500","location":"assets","locale":"","width":1500,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3525617,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1","1.0.2","1.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3525617,"resolution":"1","location":"assets","locale":"","width":1200,"height":800},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3525617,"resolution":"2","location":"assets","locale":"","width":1200,"height":800},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3525617,"resolution":"3","location":"assets","locale":"","width":1200,"height":800},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3525617,"resolution":"4","location":"assets","locale":"","width":1200,"height":800}},"screenshots":{"1":"Show or hide Elementor form fields dynamically using conditional logic","2":"Display grouped fields dynamically based on user selection","3":"Conditional Redirect after form submission","4":"Advanced Field Groups builder"}},"plugin_section":[],"plugin_tags":[16816,130308,179489,76538,161151],"plugin_category":[],"plugin_contributors":[262177],"plugin_business_model":[],"class_list":["post-304014","plugin","type-plugin","status-publish","hentry","plugin_tags-conditional-fields","plugin_tags-conditional-logic","plugin_tags-dynamic-forms","plugin_tags-elementor","plugin_tags-elementor-forms","plugin_contributors-palpatel","plugin_committers-palpatel"],"banners":{"banner":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/banner-772x250.png?rev=3525617","banner_2x":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/banner-1544x500.png?rev=3588496","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/icon-256x256.png?rev=3525617","icon_2x":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/icon-256x256.png?rev=3525617","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/screenshot-1.jpg?rev=3525617","caption":"Show or hide Elementor form fields dynamically using conditional logic"},{"src":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/screenshot-2.jpg?rev=3525617","caption":"Display grouped fields dynamically based on user selection"},{"src":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/screenshot-3.jpg?rev=3525617","caption":"Conditional Redirect after form submission"},{"src":"https:\/\/ps.w.org\/conditional-logic-fields-for-elementor-forms\/assets\/screenshot-4.jpg?rev=3525617","caption":"Advanced Field Groups builder"}],"raw_content":"<!--section=description-->\n<p><a href=\"https:\/\/themesntemplates.com\/wordpress-plugins\/conditional-logic-fields-for-elementor-forms\/\"><strong>TNT Conditional Logic Fields for Elementor Forms<\/strong><\/a> adds conditional logic to Elementor Pro forms directly inside the Elementor editor \u2014 no custom code, no external form builder, no separate dashboard to manage.<\/p>\n\n<p>Long forms that ask every visitor the same questions create a poor experience and lower conversion rates. With Elementor conditional fields, a form shows only the fields relevant to what a visitor has already answered, so a quotation form, booking form, survey, or lead-generation form adapts in real time instead of overwhelming the visitor with irrelevant questions.<\/p>\n\n<p>https:\/\/www.youtube.com\/watch?v=M81_wdtX1YQ<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Show or hide any Elementor Pro form field based on conditions<\/li>\n<li>Unlimited conditional rules per field, combined with AND \/ OR logic<\/li>\n<li>12 comparison operators in the free version \u2014 equals, contains, starts with, ends with, greater\/less than, empty, and more<\/li>\n<li><strong>Auto-Fill Value<\/strong> \u2014 a field can set its own value automatically when its condition is met, ideal for a hidden field used for lead routing or tagging<\/li>\n<li><strong>URL parameter &amp; cookie-based conditions<\/strong> \u2014 trigger a rule from a <code>?utm_source=<\/code> query string or a browser cookie, not only from another field<\/li>\n<li>Multi-step form support, with hidden steps automatically skipped<\/li>\n<li>Hidden required fields never block form submission<\/li>\n<li>Real-time visibility updates with no page reload<\/li>\n<li>Works with every standard Elementor Pro form field: text, email, number, select, radio, checkbox, acceptance, date, time, upload, and more<\/li>\n<li>Native Elementor editor integration \u2014 conditions live in the same panel as every other field setting<\/li>\n<\/ul>\n\n<h4>Why Choose TNT Conditional Logic Fields<\/h4>\n\n<ul>\n<li>A genuinely capable free tier \u2014 AND\/OR logic, 12 operators, multi-step support, auto-fill, and URL\/cookie conditions, not a crippled trial<\/li>\n<li>Lightweight: scripts load only on pages that actually contain an Elementor form, with no external libraries<\/li>\n<li>Built with agencies and freelancers in mind, for rebuilding similar forms across multiple client sites<\/li>\n<li>Stays inside Elementor's native UI \u2014 no new page builder or dashboard to learn<\/li>\n<li>A clear upgrade path when you need more: Conditional Redirect, Conditional Email routing, Conditional Submit Button, and Form Field Groups in Pro, using the same interface you already know<\/li>\n<\/ul>\n\n<h4>Free vs. Pro<\/h4>\n\n<p><strong>Free<\/strong> includes the complete conditional logic engine described above \u2014 show\/hide logic, AND\/OR rules, all 12 operators, multi-step support, auto-fill, and URL\/cookie conditions.<\/p>\n\n<p><strong>Pro<\/strong> adds:<\/p>\n\n<ul>\n<li>Conditional Redirect to different URLs after submission<\/li>\n<li>Conditional Email routing to different recipients based on field values<\/li>\n<li>Conditional Submit Button visibility<\/li>\n<li><strong>Advanced Form Field Groups<\/strong> \u2014 bundle related fields into a group and control the entire group's visibility with a single condition, instead of setting conditional logic on each field one by one. Create as many groups as your form needs, each with its own trigger condition<\/li>\n<\/ul>\n\n<h4>Built For<\/h4>\n\n<p>Agencies and freelancers building client sites, and site owners running contact forms, quotation and booking forms, surveys, event registrations, job applications, product inquiry forms, support ticket forms, and lead-qualification forms \u2014 anywhere a form should adapt to what a visitor has already told it.<\/p>\n\n<h4>Compatible Field Types<\/h4>\n\n<p>Text, Email, Number, URL, Password, Textarea, Select, Radio, Checkbox, Acceptance, Date, Time, Hidden, HTML, Step, Upload, Honeypot.<\/p>\n\n<!--section=installation-->\n<h4>Quick Installation<\/h4>\n\n<ol>\n<li>Go to Plugins &gt; Add New.<\/li>\n<li>Search for <strong>TNT Conditional Logic Fields for Elementor Forms<\/strong>.<\/li>\n<li>Click Install Now, then Activate.<\/li>\n<\/ol>\n\n<h4>Manual Installation<\/h4>\n\n<ol>\n<li>Download the plugin ZIP file.<\/li>\n<li>Upload it via Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Activate the plugin.<\/li>\n<\/ol>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.5 or higher<\/li>\n<li>Elementor, with Elementor Pro (or Hello Plus Form Lite if you're on Elementor's free tier)<\/li>\n<li>PHP 7.4 or higher<\/li>\n<\/ul>\n\n<h4>Getting Started<\/h4>\n\n<ol>\n<li>Go to <strong>TNT Conditional Fields \u2192 Features<\/strong> and enable Conditional Logic.<\/li>\n<li>Edit a page with an Elementor Pro Form widget.<\/li>\n<li>Open any form field and expand its <strong>Conditions<\/strong> tab.<\/li>\n<li>Enable conditions, choose Show or Hide, and add your rule(s).<\/li>\n<li>Publish the page and test the form \u2014 the field will show or hide as visitors interact with it.<\/li>\n<\/ol>\n\n<p><strong>Example:<\/strong> add an \"Order ID\" text field, then set it to <strong>Show<\/strong> when <strong>Inquiry Type<\/strong> <em>equals<\/em> <strong>Order Status<\/strong> \u2014 visitors only see the Order ID field once it's relevant to them.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20require%20elementor%20pro%3F\"><h3>Does this plugin require Elementor Pro?<\/h3><\/dt>\n<dd><p>Elementor Pro is required to use Elementor Forms. If you're on Elementor's free tier, install Hello Plus Form Lite to get Elementor-compatible forms.<\/p><\/dd>\n<dt id=\"how%20do%20i%20show%20or%20hide%20a%20field%20based%20on%20another%20field%27s%20value%3F\"><h3>How do I show or hide a field based on another field's value?<\/h3><\/dt>\n<dd><p>Open the field in the Elementor editor, expand its Conditions tab, enable conditions, choose Show or Hide, and add a rule that references the controlling field's ID.<\/p><\/dd>\n<dt id=\"can%20i%20trigger%20a%20condition%20from%20a%20url%20parameter%20or%20a%20cookie%3F\"><h3>Can I trigger a condition from a URL parameter or a cookie?<\/h3><\/dt>\n<dd><p>Yes. Enter <code>url:param_name<\/code> or <code>cookie:cookie_name<\/code> as the condition's Field ID instead of a form field ID.<\/p><\/dd>\n<dt id=\"can%20a%20field%20auto-fill%20its%20own%20value%20when%20a%20condition%20is%20met%3F\"><h3>Can a field auto-fill its own value when a condition is met?<\/h3><\/dt>\n<dd><p>Yes, using the Auto-Fill Value option on the Conditions tab. It's most often used to set a hidden field's value for lead routing or tagging.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20hidden%20required%20fields%20when%20the%20form%20is%20submitted%3F\"><h3>What happens to hidden required fields when the form is submitted?<\/h3><\/dt>\n<dd><p>They're automatically excluded from validation, so a hidden required field never blocks form submission.<\/p><\/dd>\n<dt id=\"does%20it%20support%20multi-step%20forms%3F\"><h3>Does it support multi-step forms?<\/h3><\/dt>\n<dd><p>Yes \u2014 hidden steps are automatically skipped, and the Next\/Submit buttons adjust to match.<\/p><\/dd>\n<dt id=\"which%20operators%20are%20supported%20in%20the%20free%20version%3F\"><h3>Which operators are supported in the free version?<\/h3><\/dt>\n<dd><p>Equals, Not Equals, Greater Than, Less Than, Greater Than or Equal, Less Than or Equal, Contains, Does Not Contain, Starts With, Ends With, Empty, and Not Empty.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20dynamic%20tags%3F\"><h3>Does it work with dynamic tags?<\/h3><\/dt>\n<dd><p>Yes, wherever Elementor Forms itself supports dynamic tags.<\/p><\/dd>\n<dt id=\"does%20it%20slow%20down%20my%20website%3F\"><h3>Does it slow down my website?<\/h3><\/dt>\n<dd><p>No. Scripts load only on pages that contain an Elementor form, and there's no measurable admin-side overhead.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20php%208.x%20and%20multisite%3F\"><h3>Is it compatible with PHP 8.x and multisite?<\/h3><\/dt>\n<dd><p>Yes to both.<\/p><\/dd>\n<dt id=\"my%20conditions%20aren%27t%20working%20%E2%80%94%20what%20should%20i%20check%3F\"><h3>My conditions aren't working \u2014 what should I check?<\/h3><\/dt>\n<dd><p>Confirm Conditional Logic is enabled under TNT Conditional Fields \u2192 Features, that Elementor Pro is up to date, and that the Field ID in your rule matches the controlling field exactly. Deactivating other plugins temporarily can help rule out a conflict.<\/p><\/dd>\n<dt id=\"can%20i%20hide%20multiple%20fields%20with%20one%20condition%20instead%20of%20setting%20logic%20on%20each%20field%3F\"><h3>Can I hide multiple fields with one condition instead of setting logic on each field?<\/h3><\/dt>\n<dd><p>Yes, with Pro's Form Field Groups. Instead of applying field-level conditional logic one field at a time, you bundle multiple fields into a group and control the whole group's visibility with a single condition \u2014 hide or show an entire section of the form at once, rather than bulk show\/hide field-by-field. You can create unlimited field groups in one Elementor form, each with its own trigger condition.<\/p><\/dd>\n<dt id=\"what%27s%20included%20in%20the%20pro%20version%3F\"><h3>What's included in the Pro version?<\/h3><\/dt>\n<dd><p>Conditional Redirect after submission, Conditional Email routing, Conditional Submit Button visibility, and Advanced Form Field Groups for group-level (rather than field-level) conditional logic.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>New: Documented Pro's Form Field Groups more thoroughly in the description and FAQ \u2014 group-level conditional logic for hiding\/showing multiple fields at once, as an alternative to field-by-field rules.<\/li>\n<li>New: A \"Leave a Review\" notice now appears on the plugin's own settings page once Conditional Logic has been enabled for at least 7 days. Dismissible, and never shown again once dismissed.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Fixed: A condition's comparison value wasn't being HTML-entity-decoded before use (the decode result was computed but never applied), so rules comparing against a value containing <code>&amp;<\/code>, <code>&lt;<\/code>, <code>&gt;<\/code>, or a quote character could silently fail to match. Comparisons now use the correctly decoded value.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>New: Auto-Fill Value \u2014 when a field's condition is met, it can now set its own value (great for hidden fields used for lead routing\/tagging), and clears back to empty when the condition stops being met.<\/li>\n<li>New: URL parameter &amp; cookie-based conditions \u2014 a condition's \"Field ID\" can now be \"url:param_name\" or \"cookie:cookie_name\" to build rules off a URL query parameter or a browser cookie instead of only another form field.<\/li>\n<li>Improved: Updated \"Tested up to\" to WordPress 7.1 and \"Requires at least\" to WordPress 6.5.<\/li>\n<li>Improved: Updated Elementor tested up to 4.2.2 and Elementor Pro tested up to 4.2.2.<\/li>\n<li>Security: Removed a settings-page routine that suppressed other plugins' admin notices by mutating WordPress internals \u2014 it could hide security-relevant notices from unrelated plugins and is no longer needed.<\/li>\n<li>Security: Restructured the frontend logic-data output so escaping is applied immediately at the point of output (no functional change; hardens against static-analysis false positives).<\/li>\n<li>Security: <code>register_setting()<\/code> for the Features option now explicitly declares its data type.<\/li>\n<li>Fixed: The header\/readme \"Requires at least\" value now matches what earlier changelog notes described.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>New: Added <code>load_textdomain()<\/code> on <code>init<\/code> hook for proper translation loading per WordPress i18n standards.<\/li>\n<li>Improved: Updated \"Tested up to\" to WordPress 7.0 and \"Requires at least\" to WordPress 6.9.<\/li>\n<li>Improved: Updated Elementor tested up to 4.1.4 and Elementor Pro tested up to 4.1.4 for full compatibility.<\/li>\n<li>Improved: Added <code>rel=\"noopener noreferrer\"<\/code> to all external <code>target=\"_blank\"<\/code> links for security best practice.<\/li>\n<li>Improved: Bumped minimum WordPress requirement from 6.0 to 6.9 to align with supported versions.<\/li>\n<li>Fixed: PHP 8.x compatibility \u2014 no deprecated warnings on PHP 8.0, 8.1, 8.2, 8.3, or 8.4.<\/li>\n<li>Fixed: Asset cache busting now reliably uses the <code>CLFEF_VERSION<\/code> constant across all enqueued files.<\/li>\n<li>Security: All external anchor tags now include <code>rel=\"noopener noreferrer\"<\/code> per WordPress.org security guidelines.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Added conditional logic engine<\/li>\n<li>Added support for all field types<\/li>\n<li>Performance improvements<\/li>\n<\/ul>","raw_excerpt":"Add conditional logic to Elementor Pro forms \u2014 show\/hide fields, auto-fill values, and build smart forms with zero code.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/304014","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=304014"}],"author":[{"embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/palpatel"}],"wp:attachment":[{"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=304014"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=304014"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=304014"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=304014"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=304014"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/az.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=304014"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}