[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fc59PVoiVPAs8mn_i74qzpcfhbtKO9CcbzDrjdCUMn78":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":32,"crawl_stats":29,"alternatives":40,"analysis":153,"fingerprints":206},"controller-fields-for-contact-form-7","Controller Fields for Contact Form 7","2.0.0","Tessa (they\u002Fthem), AuRise Creative","https:\u002F\u002Fprofiles.wordpress.org\u002Ftessawatkinsllc\u002F","\u003Cp>Contact Form 7 is an excellent WordPress plugin and one of the top choices of free WordPress plugins for contact forms. Controller Fields makes it even more awesome by adding dynamic content capabilities. This plugin provides new form tags for select fields, checkboxes, and radio buttons so you can use them to control the display of other fields and content. Some examples might include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Hiding or revealing additional form fields based the current value in a dropdown\u003C\u002Fli>\n\u003Cli>Hiding or revealing content when users click a checkbox\u003C\u002Fli>\n\u003Cli>Hiding or revealing information based on which radio button is currently selected\u003C\u002Fli>\n\u003Cli>Controllers and controlled fields can be nested\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The possibilities are endless!\u003C\u002Fp>\n\u003Ch4>View Demo\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcontroller-fields-for-contact-form-7\u002F?preview=1\" rel=\"ugc\">Preview this plugin\u003C\u002Fa> in the WordPress Playground, a sandbox environment where you can explore the features of this plugin, both in the WordPress backend as an admin user and on the frontend.\u003C\u002Fp>\n\u003Ch4>WHAT DOES IT DO?\u003C\u002Fh4>\n\u003Cp>This plugin creates three (3) new form tags for controlling the appearance of other form tags (aka “controller”) and a special form tag generator button to output the HTML needed to wrap the controllable form tags inside.\u003C\u002Fp>\n\u003Ch4>HOW TO USE IT\u003C\u002Fh4>\n\u003Cp>After installing and activating the plugin, you will have four (4) new buttons at the top when creating or editing a Contact Form 7 form: select controller, checkbox controller, radio controller, and controlled form tag wrapper. Most of the options in their tag generators will be familiar to Contact Form 7 users but there have been some upgrades.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Id Attribute\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>The frontend script relies on unique IDs for the controller form tags, so be sure to always set one!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Options\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>There are three (3) ways you can define your options. The first method is simply typing your options with each one on a new line, e.g.:\u003C\u002Fp>\n\u003Cpre>Apples\nBananas\nDragonfruit\u003C\u002Fpre>\n\u003Cp>The second method is similar, but it allows you more control over the value and label by using \u003Ccode>|\u003C\u002Fcode> to separate them, e.g.:\u003C\u002Fp>\n\u003Cpre>fruit_1 | Apples\nfruit_2 | Bananas\nfruit_3 | Dragonfruit\u003C\u002Fpre>\n\u003Cp>The third method is dynamic in that you can use a shortcode to populate your options with two important provisions:\u003C\u002Fp>\n\u003Col>\n\u003Cli>The shortcode should NOT include the normal square brackets (\u003Ccode>[\u003C\u002Fcode> and \u003Ccode>]\u003C\u002Fcode>). So, instead of \u003Ccode>[my_shortcode key='value']\u003C\u002Fcode> you would use \u003Ccode>my_shortcode key='value'\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Any parameters in the shortcode must use single quotes. That is: \u003Ccode>my_shortcode key='value'\u003C\u002Fcode> and not \u003Ccode>my_shortcode key=\"value\"\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Shortcodes used here should return a string value with the option or option group HTML.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Default value\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>This field can take static text or a shortcode. If using a shortcode, the same syntax applies from the options field. However, this field also has a few more needs:\u003C\u002Fp>\n\u003Col>\n\u003Cli>The text\u002Fshortcode must first have apostrophes converted to it’s HTML entity code, \u003Ccode>'\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>After that, it must be URL encoded so that spaces become \u003Ccode>%20\u003C\u002Fcode> and other non-alphanumeric characters are converted.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Placeholder\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Only available for the select controller form tag, this field can take static text or a shortcode.  If using a shortcode, the same syntax applies from the options field. However, this field also has a few more needs:\u003C\u002Fp>\n\u003Col>\n\u003Cli>The text\u002Fshortcode must first have apostrophes converted to it’s HTML entity code, \u003Ccode>'\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>After that, it must be URL encoded so that spaces become \u003Ccode>%20\u003C\u002Fcode> and other non-alphanumeric characters are converted.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Read Only Attribute\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Simply check this box if you do not want to let users edit this field. It will add the \u003Ccode>readonly\u003C\u002Fcode> attribute to your form field.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Disabled Attribute\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Simply check this box if you do not want to submit this field in the form. It will add the \u003Ccode>disabled\u003C\u002Fcode> attribute to your form field.\u003C\u002Fp>\n","Hide or display content in your forms created in Contact Form 7 based on user selections!",50,3253,100,1,"2024-12-02T14:07:00.000Z","6.7.5","5.8","7.4",[20,21,22,23,24],"conditional","contact-form-7","dynamic","interactive","user-based","https:\u002F\u002Faurisecreative.com\u002Fcontroller-fields-for-contact-form-7\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontroller-fields-for-contact-form-7.2.0.0.zip",92,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":35,"avg_security_score":36,"avg_patch_time_days":37,"trust_score":38,"computed_at":39},"tessawatkinsllc",5,10150,91,30,88,"2026-04-04T22:23:21.677Z",[41,67,89,111,132],{"slug":42,"name":43,"version":44,"author":45,"author_profile":46,"description":47,"short_description":48,"active_installs":49,"downloaded":50,"rating":51,"num_ratings":52,"last_updated":53,"tested_up_to":54,"requires_at_least":55,"requires_php":56,"tags":57,"homepage":62,"download_link":63,"security_score":64,"vuln_count":65,"unpatched_count":28,"last_vuln_date":66,"fetched_at":30},"cf7-conditional-fields","Conditional Fields for Contact Form 7","2.6.8","Jules Colle","https:\u002F\u002Fprofiles.wordpress.org\u002Fjules-colle\u002F","\u003Cp>This plugin adds conditional logic to \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcontact-form-7\u002F\" rel=\"ugc\">Contact Form 7\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>If you edit your CF7 form, you will see an additional tag called “Conditional fields Group”. Everything you put between the start and end tag will be hidden by default.\u003Cbr \u002F>\nAfter you have added the field group(s), go to the “Conditional fields” tab to create one or more conditions that will make the group(s) appear.\u003C\u002Fp>\n\u003Cp>Conditional Fields for Contact Form 7 is an independent plugin. This plugin is not affiliated with or endorsed by the developers of Contact Form 7.\u003C\u002Fp>\n\u003Ch4>How to use it\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fconditional-fields-cf7.bdwm.be\u002Fconditional-fields-for-contact-form-7-tutorial\u002F\" rel=\"nofollow ugc\">Follow this tutorial\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Main features\u003C\u002Fh3>\n\u003Ch4>Support for required fields\u003C\u002Fh4>\n\u003Cp>Required fields inside hidden groups will never trigger validation errors.\u003C\u002Fp>\n\u003Ch4>Hide\u002Fshow info in emails based on what groups are visible\u003C\u002Fh4>\n\u003Cp>Conditional groups can now be added to the emails as well.\u003Cbr \u002F>\nJust wrap the content with \u003Ccode>[group-name] ... [\u002Fgroup-name]\u003C\u002Fcode> tags.\u003C\u002Fp>\n\u003Ch4>Groups can be nested\u003C\u002Fh4>\n\u003Cp>Groups can be nested, both in the form and in the email\u003C\u002Fp>\n\u003Cp>Example form:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[group group-1]\n  [group group-inside-1]\n    ...\n  [\u002Fgroup]\n[\u002Fgroup]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Example email:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[group-1]\n  [group-inside-1]\n    ...\n  [\u002Fgroup-inside-1]\n[\u002Fgroup-1]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Advanced\u003C\u002Fh4>\n\u003Cp>Advanced users can code up the conditions as plain text instead of using the select boxes, using the Text View.\u003C\u002Fp>\n\u003Ch3>Need more power?\u003C\u002Fh3>\n\u003Cp>Just like WordPress, the power of Contact Form 7 lies in its \u003Ca href=\"https:\u002F\u002Fconditional-fields-cf7.bdwm.be\u002Flist-of-all-contact-form-7-extensions\u002F\" rel=\"nofollow ugc\">rich eco-system of extensions\u003C\u002Fa> that build on top of it. However, it can be difficult to find a set of complex extensions that work well together.\u003C\u002Fp>\n\u003Cp>That’s why I created Conditional Fields Pro. It adds some powerful features to Contact form 7 and guarantees that everything will run smoothly with Conditional Fields.\u003C\u002Fp>\n\u003Cp>Pro features include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Repeatable fields (repeaters)\u003C\u002Fli>\n\u003Cli>Forms with multiple steps (multistep)\u003C\u002Fli>\n\u003Cli>Custom conditions with JavaScript functions\u003C\u002Fli>\n\u003Cli>Multiple file upload\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fconditional-fields-cf7.bdwm.be\u002Fcontact-form-7-conditional-fields-pro\u002F\" rel=\"nofollow ugc\">Get the PRO version of Conditional Fields for Contact Form 7!\u003C\u002Fa>\u003C\u002Fp>\n","Adds conditional logic to Contact Form 7.",100000,6394535,96,164,"2026-02-08T10:49:00.000Z","6.9.4","5.0","7.0",[58,59,21,60,61],"conditional-fields","conditional-logic","form","forms","http:\u002F\u002Fbdwm.be\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcf7-conditional-fields.2.6.8.zip",97,4,"2024-10-24 00:00:00",{"slug":68,"name":69,"version":70,"author":71,"author_profile":72,"description":73,"short_description":74,"active_installs":49,"downloaded":75,"rating":76,"num_ratings":13,"last_updated":77,"tested_up_to":54,"requires_at_least":78,"requires_php":18,"tags":79,"homepage":84,"download_link":85,"security_score":86,"vuln_count":87,"unpatched_count":14,"last_vuln_date":88,"fetched_at":30},"contact-form-7-dynamic-text-extension","Contact Form 7 – Dynamic Text Extension","5.0.5","sevenspark","https:\u002F\u002Fprofiles.wordpress.org\u002Fsevenspark\u002F","\u003Cp>Contact Form 7 is an excellent WordPress plugin and one of the top choices of free WordPress plugins for contact forms. Contact Form 7 – Dynamic Text Extension (DTX) makes it even more awesome by adding dynamic content capabilities. While default values in Contact Form 7 are static, DTX lets you create pre-populated fields pulled from other locations. Some examples might include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Auto-filling a URL or just getting the domain name or path\u003C\u002Fli>\n\u003Cli>Auto-filling a post ID, title, or slug\u003C\u002Fli>\n\u003Cli>Auto-filling a title, URL, or slug for the current page\u003C\u002Fli>\n\u003Cli>Pre-populating a product number\u003C\u002Fli>\n\u003Cli>Referencing other content on the site\u003C\u002Fli>\n\u003Cli>Populating with post or page info\u003C\u002Fli>\n\u003Cli>Populating with the current user’s info\u003C\u002Fli>\n\u003Cli>Populating with custom and meta fields\u003C\u002Fli>\n\u003Cli>Generating unique identifiers for support tickets\u003C\u002Fli>\n\u003Cli>Getting a list of post categories or other custom taxonomies\u003C\u002Fli>\n\u003Cli>Getting a value from a cookie\u003C\u002Fli>\n\u003Cli>Getting custom theme modifications\u003C\u002Fli>\n\u003Cli>Any value using custom shortcodes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>The possibilities are endless!\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcontact-form-7-dynamic-text-extension\u002F?preview=1\" rel=\"ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>For over 10 years, DTX only handled \u003Ccode>\u003Cinput type=\"text\" \u002F>\u003C\u002Fcode> and \u003Ccode>\u003Cinput type=\"hidden\" \u002F>\u003C\u002Fcode> form fields, but version 4 finally introduces more:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>email\u003C\u002Fli>\n\u003Cli>URL\u003C\u002Fli>\n\u003Cli>tel (for phone numbers)\u003C\u002Fli>\n\u003Cli>number\u003C\u002Fli>\n\u003Cli>range (slider)\u003C\u002Fli>\n\u003Cli>textarea (multiline text)\u003C\u002Fli>\n\u003Cli>drop-down menu (select field)\u003C\u002Fli>\n\u003Cli>checkboxes\u003C\u002Fli>\n\u003Cli>radio buttons\u003C\u002Fli>\n\u003Cli>date\u003C\u002Fli>\n\u003Cli>submit (yes, a submit button where you can have dynamic text!)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>WHAT DOES IT DO?\u003C\u002Fh3>\n\u003Cp>DTX provides flexibility to WordPress users in creating dynamic forms in Contact Form 7. DTX comes with several built-in shortcodes that will allow the contact form to be populated from HTTPS GET variable or any info from the \u003Ccode>get_bloginfo()\u003C\u002Fcode> function, among others. See below for included shortcodes.\u003C\u002Fp>\n\u003Cp>Don’t see the shortcode you need on the list? You can write a \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fcustom-shortcodes\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">custom one\u003C\u002Fa>! Any shortcode that returns a string or numeric value can be used here. The included shortcodes just cover the most common scenarios, but DTX provides the flexibility for you to grab any value you have access to programmatically.\u003C\u002Fp>\n\u003Ch4>Dynamic Value\u003C\u002Fh4>\n\u003Cp>The bread and butter of this plugin, set a dynamic value! This field can take any shortcode, with two important provisions:\u003C\u002Fp>\n\u003Col>\n\u003Cli>The shortcode should NOT include the normal square brackets (\u003Ccode>[\u003C\u002Fcode> and \u003Ccode>]\u003C\u002Fcode>). So, instead of \u003Ccode>[CF7_GET key='value']\u003C\u002Fcode> you would use \u003Ccode>CF7_GET key='value'\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Any parameters in the shortcode must use single quotes. That is: \u003Ccode>CF7_GET key='value'\u003C\u002Fcode> and not \u003Ccode>CF7_GET key=\"value\"\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Dynamic Placeholder\u003C\u002Fh4>\n\u003Cp>Set a dynamic placeholder with this attribute! This feature accepts static text or a shortcode. If using a shortcode, the same syntax applies from the dynamic value field. However, this field also has a few more needs:\u003C\u002Fp>\n\u003Col>\n\u003Cli>The text\u002Fshortcode must first have apostrophes converted to it’s HTML entity code, \u003Ccode>&#39;\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>After that, it must be URL encoded so that spaces become \u003Ccode>%20\u003C\u002Fcode> and other non-alphanumeric characters are converted.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>If you’re using Contact Form 7’s tag generator to create the form tag, those extra needs are already taken care of. Dynamic placeholders are not available for dynamic hidden form tags.\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-attribute-placeholder\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Compatible with Caching Plugins\u003C\u002Fh4>\n\u003Cp>DTX is cache friendly! You can set a field to be calculated after the page loads by setting the \u003Ccode>dtx_pageload\u003C\u002Fcode> attribute to any dynamic form tag.\u003C\u002Fp>\n\u003Cp>Many websites use caching plugins to optimize for performance. If your website caches the HTML of the form, then any dynamic form fields you have get their first calculated value cached alongside it. This becomes an issue if you’re using DTX to pull values from a cookie or the current URL’s query string.\u003C\u002Fp>\n\u003Cp>This is best for dynamic form fields that:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>gets the current URL\u003C\u002Fli>\n\u003Cli>gets a value from the URL query\u003C\u002Fli>\n\u003Cli>gets a value from a cookie\u003C\u002Fli>\n\u003Cli>gets the current user’s info\u003C\u002Fli>\n\u003Cli>generates a unique identifier (GUID)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For dynamic fields that are page-specific, it’s perfectly safe to cache those values. For example, dynamic form fields that:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>getting the page or post’s ID, title, or slug\u003C\u002Fli>\n\u003Cli>getting post meta for the current page\u003C\u002Fli>\n\u003Cli>getting the post’s assigned categories, tags, or other custom taxonomy\u003C\u002Fli>\n\u003Cli>getting site info\u003C\u002Fli>\n\u003Cli>getting theme modification values\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Note: Enabling a dynamic field to be calculated after the page loads will add frontend JavaScript. Depending on the shortcode used as the dynamic value, an AJAX call to the server may be sent to be processed. The script is minified and loaded in the footer and is deferred, minimizing impact on site performance and the AJAX calls are called asynchronously to avoid being a render-blocking resource and minimizing main-thread work. The script itself can be safely cached too.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fform-tag-attribute-after-page-load\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Read Only Form Fields\u003C\u002Fh4>\n\u003Cp>Check this box if you do not want to let users edit this field. It will add the \u003Ccode>readonly\u003C\u002Fcode> attribute to the input form field. This feature is not available for dynamic hidden form tags.\u003C\u002Fp>\n\u003Ch4>Obfuscate Values for Enhanced Privacy\u003C\u002Fh4>\n\u003Cp>If you’re pre-filling a form field with an email address, bots can scrape that value from the page and use it for spam. You can add an additional layer of protecting by obfuscating the value, which turns each character into it’s ASCII code. To the human eye, it looks like the character it’s supposed to be because browsers will render the ASCII code, but for bots, it won’t look like an email address!\u003C\u002Fp>\n\u003Ch3>HOW TO USE IT\u003C\u002Fh3>\n\u003Cp>After installing and activating the plugin, you will have 2 new tag types to select from when creating or editing a Contact Form 7 form: the dynamic text field and dynamic hidden field. Most of the options in their tag generators will be familiar to Contact Form 7 users but there have been some upgrades.\u003C\u002Fp>\n\u003Ch4>How to Obfuscate Values\u003C\u002Fh4>\n\u003Cp>All of the shortcodes included with the DTX plugin allow the \u003Ccode>obfuscate\u003C\u002Fcode> attribute that you can set to any truthy value to provide an additional layer of security for sensitive data.\u003C\u002Fp>\n\u003Cp>The Contact Form 7 tag with obfuscation turned on would look like this: \u003Ccode>[dynamictext user_email \"CF7_get_current_user key='user_email' obfuscate='on'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch4>How to Enable Cache-Friendly Mode\u003C\u002Fh4>\n\u003Cp>All of the dynamic form tags can be enabled for processing on the frontend of the website, or the client-side, by adding the \u003Ccode>dtx_pageload\u003C\u002Fcode> attribute to the Contact Form 7 form tag.\u003C\u002Fp>\n\u003Cp>In the form editor of Contact Form 7, your form tag would look like: \u003Ccode>[dynamictext current_url dtx_pageload \"CF7_URL\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>If using the tag generator, it’s as simple as checking a box!\u003C\u002Fp>\n\u003Ch3>INCLUDED SHORTCODES\u003C\u002Fh3>\n\u003Cp>The plugin includes several shortcodes for use with the Dynamic Text Extension right out of the box. You can write your own as well—any self-closing shortcode will work, even with attributes!\u003C\u002Fp>\n\u003Ch4>Current URL or Part\u003C\u002Fh4>\n\u003Cp>Retrieve the current URL: \u003Ccode>CF7_URL\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>In the form editor of Contact Form 7, your form tag would look like: \u003Ccode>[dynamictext dynamicname \"CF7_URL\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Optional parameter: \u003Ccode>part\u003C\u002Fcode>, which will return a parsed part of the URL.  Valid values are \u003Ccode>host\u003C\u002Fcode>, \u003Ccode>query\u003C\u002Fcode>, and \u003Ccode>path\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Host: Just the domain name and tld\u003Cbr \u002F>\n    [dynamictext host “CF7_URL part=’host'”]\u003C\u002Fp>\n\u003Cp>Query: The query string after the ?, if one exists\u003Cbr \u002F>\n    [dynamictext query “CF7_URL part=’query'”]\u003C\u002Fp>\n\u003Cp>Path: The URL path, for example, \u002Fcontact, if one exists\u003Cbr \u002F>\n    [dynamictext path “CF7_URL part=’path'”]\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-current-url\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Referrer URL\u003C\u002Fh4>\n\u003Cp>Get the referral URL, if it exists. Note that this is not necessarily reliable as not all browsers send this data.\u003C\u002Fp>\n\u003Cp>CF7 Tag: \u003Ccode>[dynamictext dynamicname \"CF7_referrer\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-referrer-url\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Current Page Variables\u003C\u002Fh4>\n\u003Cp>Retrieve information about the current page that the contact form is displayed on. Works great for use in templated areas like the site header, footer, widget, or sidebar! The shortcode works as follows:\u003C\u002Fp>\n\u003Cp>Built-in shortcode: \u003Ccode>CF7_get_current_var\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Required attribute: \u003Ccode>key\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Possible values for \u003Ccode>key\u003C\u002Fcode> include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>id\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>title\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>url\u003C\u002Fcode> (an alias for \u003Ccode>CF7_URL\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Ccode>slug\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>featured_image\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>terms\u003C\u002Fcode> (an alias for \u003Ccode>CF7_get_taxonomy\u003C\u002Fcode>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For pages that use a \u003Ccode>WP_POST\u003C\u002Fcode> object, this acts as an alias for \u003Ccode>CF7_get_post_var\u003C\u002Fcode> so those attributes work here as well.\u003C\u002Fp>\n\u003Cp>For author pages, this acts as an alias for \u003Ccode>CF7_get_current_user\u003C\u002Fcode> so those attributes work here as well.\u003C\u002Fp>\n\u003Cp>In the form editor of Contact Form 7, your form tag’s value could look like: \u003Ccode>CF7_get_current_var key='title'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>And then the full form tag would be: \u003Ccode>[dynamictext dynamicname \"CF7_get_current_var key='title'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-current-variables\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Post\u002FPage Info\u003C\u002Fh4>\n\u003Cp>Retrieve information about the current post or page (must be for a WP_POST object) that the contact form is displayed on. The shortcode works as follows:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>CF7_get_post_var key='title'      \u003C-- retrieves the Post's Title\nCF7_get_post_var key='slug'       \u003C-- retrieves the Post's Slug\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You can also retrieve any parameter from the global \u003Ccode>$post\u003C\u002Fcode> object. Just set that as the \u003Ccode>key\u003C\u002Fcode> value, for example \u003Ccode>post_date\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>The Contact Form 7 Tag would look like: \u003Ccode>[dynamictext dynamicname \"CF7_get_post_var key='title'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Need to pull data from a \u003Cem>different\u003C\u002Fem> post\u002Fpage? Not a problem! Just specify it’s post ID like this:\u003C\u002Fp>\n\u003Cp>Dynamic value: \u003Ccode>CF7_get_post_var key='title' post_id='245'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Contact Form 7 Tag: \u003Ccode>[dynamictext dynamicname \"CF7_get_post_var key='title' post_id='245'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-post-page-variables\u002F\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Post Meta & Custom Fields\u003C\u002Fh4>\n\u003Cp>Retrieve custom fields from the current post\u002Fpage. Just set the custom field as the key in the shortcode.\u003C\u002Fp>\n\u003Cp>Note: You must add any meta keys that you want to allow access to to the allow list in your admin panel > Contact > Dynamic Text Extension > Meta Key Allow List.  \u003Ca href=\"https:\u002F\u002Fsevenspark.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fallow-data-access\" rel=\"nofollow ugc\">More Information\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>The dynamic value input becomes: \u003Ccode>CF7_get_custom_field key='my_custom_field'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>And the tag looks like this: \u003Ccode>[dynamictext dynamicname \"CF7_get_custom_field key='my_custom_field'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>For the purposes of including an email address, you can obfuscate the custom field value by setting obfuscate=’on’ in the shortcode like this:\u003Cbr \u002F>\n    [dynamictext dynamicname “CF7_get_custom_field key=’my_custom_field’ obfuscate=’on'”]\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-post-meta-custom-fields\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Featured Images & Media Attachments\u003C\u002Fh4>\n\u003Cp>Retrieve the current post’s featured image, the featured image of a different page, or any attachment from the Media Library with this shortcode!\u003C\u002Fp>\n\u003Cp>The base shortcode is simply: \u003Ccode>CF7_get_attachment\u003C\u002Fcode> which returns the absolute URL of the current page’s featured image.\u003C\u002Fp>\n\u003Cp>By setting the \u003Ccode>post_id\u003C\u002Fcode> attribute to a post ID, you can get the featured image of another page.\u003C\u002Fp>\n\u003Cp>By setting the \u003Ccode>id\u003C\u002Fcode> attribute to an attachment ID, you can get the absolute URL of any image uploaded to your WordPress website.\u003C\u002Fp>\n\u003Cp>By setting the \u003Ccode>size\u003C\u002Fcode> attribute to any size registered on your website, you can get a specific image size.\u003C\u002Fp>\n\u003Cp>Want to return the attachment ID instead of the URL? Also not a problem! Just set \u003Ccode>return='id'\u003C\u002Fcode> in the shortcode.\u003C\u002Fp>\n\u003Cp>Most of the optional attributes can be used at the same time. For example, if I wanted to retrieve the attachment ID of a featured image for a different post, then the dynamic text form tag would look like this:\u003Cbr \u002F>\n    [dynamictext input_name “CF7_get_attachment post_id=’123′ return=’id'”]\u003C\u002Fp>\n\u003Cp>If I wanted to get a specific image at a specific size, I can use this:\u003Cbr \u002F>\n    [dynamictext input_name “CF7_get_attachment id=’123′ size=’thumbnail'”]\u003C\u002Fp>\n\u003Cp>The only two attributes that can’t play together is \u003Ccode>id\u003C\u002Fcode> and \u003Ccode>post_id\u003C\u002Fcode>. If both are specified, it will get the attachment specified by \u003Ccode>id\u003C\u002Fcode> and completely ignore the \u003Ccode>post_id\u003C\u002Fcode> attribute. If neither are specified, then it looks to the current featured image assigned to the global \u003Ccode>$post\u003C\u002Fcode> object.\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-media-attachment\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Current User Info & User Meta\u003C\u002Fh4>\n\u003Cp>Get data about the current logged-in user.\u003C\u002Fp>\n\u003Cp>Dynamic value: \u003Ccode>CF7_get_current_user key='user_displayname'\u003C\u002Fcode>\u003Cbr \u002F>\nCF7 Tag: \u003Ccode>[dynamictext dynamicname \"CF7_get_current_user\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Note: You must add any user keys that you want to allow access to to the allow list in your admin panel > Contact > Dynamic Text Extension > User Data Key Allow List.  \u003Ca href=\"https:\u002F\u002Fsevenspark.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fallow-data-access\" rel=\"nofollow ugc\">More Information\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Valid values for \u003Ccode>key\u003C\u002Fcode> include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>ID\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>user_login\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>display_name\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>user_email\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>user_firstname\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>user_lastname\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Ccode>user_description\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>But also custom meta user keys!\u003C\u002Fp>\n\u003Cp>For the purposes of including an email address, you can obfuscate the value by setting obfuscate=’on’ in the shortcode like this:\u003Cbr \u002F>\n    [dynamictext dynamicname “CF7_get_current_user key=’user_email’ obfuscate=’on'”]\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-current-user-user-meta\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Site\u002FBlog Info\u003C\u002Fh4>\n\u003Cp>Want to grab some information from your blog like the URL or the site name? Use the \u003Ccode>CF7_bloginfo\u003C\u002Fcode> shortcode. For example, to get the site’s URL:\u003C\u002Fp>\n\u003Cp>Enter the following into the “Dynamic Value” input: \u003Ccode>CF7_bloginfo show='url'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Your Content Form 7 Tag will look something like this: \u003Ccode>[dynamictext dynamicname \"CF7_bloginfo show='url'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Your form’s dynamicname text input will then be pre-populated with your site’s URL\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-site-blog-information\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Theme Options\u003C\u002Fh4>\n\u003Cp>Want to retrieve values from your active theme’s Customizer? Now you can with the \u003Ccode>CF7_get_theme_option\u003C\u002Fcode> shortcode.\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-theme-option\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>HTTP GET Variables\u003C\u002Fh4>\n\u003Cp>Want to use a variable from the PHP \u003Ccode>$_GET\u003C\u002Fcode> array? Just use the \u003Ccode>CF7_GET\u003C\u002Fcode> shortcode. For example, if you want to get the foo parameter from the url\u003Cbr \u002F>\n    http:\u002F\u002Fmysite.com?foo=bar\u003C\u002Fp>\n\u003Cp>Enter the following into the “Dynamic Value” input: \u003Ccode>CF7_GET key='foo'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Your Content Form 7 Tag will look something like this: \u003Ccode>[dynamictext dynamicname \"CF7_GET key='foo'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Your form’s dynamicname text input will then be pre-populated with the value of \u003Ccode>foo\u003C\u002Fcode>, in this case, \u003Ccode>bar\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-php-get-variables\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>HTTP POST Variables\u003C\u002Fh4>\n\u003Cp>Grab variables from the PHP \u003Ccode>$_POST\u003C\u002Fcode> array. The shortcode is much like the GET shortcode:\u003C\u002Fp>\n\u003Cp>Dynamic value: \u003Ccode>CF7_POST key='foo'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Your Content Form 7 Tag will look something like this: \u003Ccode>[dynamictext dynamicname \"CF7_POST key='foo'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-php-post-variables\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Cookie Values\u003C\u002Fh4>\n\u003Cp>If your WordPress website uses cookies, you might want to pull the value of a specific cookie into a form. You can do that with the \u003Ccode>CF7_get_cookie\u003C\u002Fcode> shortcode. It only needs a \u003Ccode>key\u003C\u002Fcode> attribute.\u003C\u002Fp>\n\u003Cp>Dynamic value: \u003Ccode>CF7_get_cookie key='foo'\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Your Content Form 7 Tag will look something like this: \u003Ccode>[dynamictext dynamicname \"CF7_get_cookie key='foo'\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-cookie\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>GUID\u003C\u002Fh4>\n\u003Cp>Generate a globally unique identifier (GUID) in a form field. This is a great utility shortcode for forms that need unique identifiers for support tickets, receipts, reference numbers, etc., without having to expose personally identifiable information (PII). This shortcode takes no parameters: \u003Ccode>CF7_guid\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>In the form editor of Contact Form 7, your form tag would look like: \u003Ccode>[dynamictext dynamicname \"CF7_guid\"]\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Learn more and see examples from \u003Ca href=\"https:\u002F\u002Faurisecreative.com\u002Fdocs\u002Fcontact-form-7-dynamic-text-extension\u002Fshortcodes\u002Fdtx-shortcode-guid\u002F?utm_source=wordpress.org&utm_medium=link&utm_campaign=contact-form-7-dynamic-text-extension&utm_content=readme\" rel=\"nofollow ugc\">the DTX Knowledge base\u003C\u002Fa>.\u003C\u002Fp>\n","Extends Contact Form 7 by adding dynamic form fields that accepts shortcodes to prepopulate form fields with default values and dynamic placeholders.",1907545,94,"2026-02-17T14:33:00.000Z","5.5",[80,21,81,82,83],"autofill","dynamic-form","form-field","prepopulate","https:\u002F\u002Faurisecreative.com\u002Fproducts\u002Fwordpress-plugin\u002Fcontact-form-7-dynamic-text-extension\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontact-form-7-dynamic-text-extension.5.0.5.zip",74,6,"2025-09-26 00:00:00",{"slug":90,"name":91,"version":92,"author":93,"author_profile":94,"description":95,"short_description":96,"active_installs":97,"downloaded":98,"rating":99,"num_ratings":100,"last_updated":101,"tested_up_to":54,"requires_at_least":102,"requires_php":18,"tags":103,"homepage":109,"download_link":110,"security_score":13,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"block-visibility","Block Visibility — Conditional Visibility Control for the Block Editor","3.7.1","Nick Diego","https:\u002F\u002Fprofiles.wordpress.org\u002Fndiego\u002F","\u003Cp>Easily create dynamic content in WordPress that will increase conversions, enhance the user experience, and improve your workflow.\u003C\u002Fp>\n\u003Cp>With this \u003Cstrong>no-code\u003C\u002Fstrong> solution, control which blocks are visible on your website and who can see them. Schedule content to show or hide at a specific time. Display exclusive promotions to your customers or members. Restrict blocks to specific user roles, screen sizes, query strings, WooCommerce products, EDD downloads, ACF fields, WP Fusion tags, and more.\u003C\u002Fp>\n\u003Cp>Block Visibility is built exclusively for the WordPress Editor (Gutenberg) and is designed to work with \u003Cstrong>any\u003C\u002Fstrong> WordPress block. This includes blocks natively provided by WordPress, third-party blocks, and even block-based widgets.\u003C\u002Fp>\n\u003Ch3>Create Conditional Blocks in Seconds!\u003C\u002Fh3>\n\u003Cp>Work directly in the WordPress Editor with blocks you’re already familiar with. There is no external editor or new interface to learn. In seconds, you can transform static blocks into conditional and personalized content.\u003C\u002Fp>\n\u003Cp>It takes just \u003Cstrong>3 simple steps\u003C\u002Fstrong>:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Create your content using \u003Cstrong>any\u003C\u002Fstrong> WordPress block.\u003C\u002Fli>\n\u003Cli>Select the desired visibility conditions.\u003C\u002Fli>\n\u003Cli>Save the page\u002Fpost and marvel at the results!\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Packed With Features\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Visibility Controls\u003C\u002Fstrong> determine whether a block should be visible to users on the front end of your website. Features include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Hide\u003C\u002Fstrong> blocks from all users.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Schedule\u003C\u002Fstrong> when content should be visible using a start and end date\u002Ftime.\u003C\u002Fli>\n\u003Cli>Conditionally display blocks based on \u003Cstrong>screen size\u003C\u002Fstrong> (Desktop, Tablet, Mobile, and more)\u003C\u002Fli>\n\u003Cli>Only show blocks to \u003Cstrong>logged-in\u003C\u002Fstrong> users.\u003C\u002Fli>\n\u003Cli>Only show blocks to \u003Cstrong>logged-out\u003C\u002Fstrong> users.\u003C\u002Fli>\n\u003Cli>Only show blocks to users with \u003Cstrong>specific roles\u003C\u002Fstrong> (Administrator, Subscriber, Customer, Member, etc.)\u003C\u002Fli>\n\u003Cli>Only show blocks to \u003Cstrong>specific users\u003C\u002Fstrong>. Great for personalization.\u003C\u002Fli>\n\u003Cli>Show or hide dynamic blocks based on \u003Cstrong>URL query strings\u003C\u002Fstrong>. Great for marketing campaigns!\u003C\u002Fli>\n\u003Cli>Show or hide blocks based on their \u003Cstrong>location\u003C\u002Fstrong> and “attributes” of their location (post type, taxonomy, archive, etc.)\u003C\u002Fli>\n\u003Cli>Display blocks based on a website visitor’s \u003Cstrong>referral source\u003C\u002Fstrong> (domain\u002FURL).\u003C\u002Fli>\n\u003Cli>Support for all post and user \u003Cstrong>metadata\u003C\u002Fstrong> (custom fields).\u003C\u002Fli>\n\u003Cli>Display blocks based on HTML \u003Cstrong>cookies\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce:\u003C\u002Fstrong> Show or hide blocks based on products, cart contents, customer purchase history, and more.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Advanced Custom Fields (ACF):\u003C\u002Fstrong> Control the visibility of block content based on \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadvanced-custom-fields\u002F\" rel=\"ugc\">ACF\u003C\u002Fa> fields.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Easy Digital Downloads:\u003C\u002Fstrong> Show or hide blocks based on downloads, cart contents, customer purchase history, and more.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WP Fusion:\u003C\u002Fstrong> Combine Block Visibility with the power of \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-fusion-lite\u002F\" rel=\"ugc\">WP Fusion\u003C\u002Fa> to conditionally show or hide content based on data from your favorite CRM or marketing automation platform.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>PLUS: Powerful Settings\u003C\u002Fstrong> allow you to customize Block Visibility to your needs or those of your clients.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Visibility Presets allow you to control multiple blocks at once.\u003C\u002Fli>\n\u003Cli>Globally disable any visibility control.\u003C\u002Fli>\n\u003Cli>Restrict visibility controls to specific block types.\u003C\u002Fli>\n\u003Cli>Set permissions so only certain users have access to visibility conditions.\u003C\u002Fli>\n\u003Cli>Configure up to 4 different breakpoints to optimize the screen size controls.\u003C\u002Fli>\n\u003Cli>Disable contextual indicators and other plugin utilities.\u003C\u002Fli>\n\u003Cli>Customize the contextual indicator color to enhance theme compatibility.\u003C\u002Fli>\n\u003Cli>Enable Full Control Mode 🚀 (See the FAQs).\u003C\u002Fli>\n\u003Cli>Remove all plugin settings on uninstall.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Do I Need This?\u003C\u002Fh3>\n\u003Cp>While there are countless applications for conditional blocks, here are a few examples to get you started:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Use as a content management tool. Hide new blocks while working on them, but keep the page published.\u003C\u002Fli>\n\u003Cli>Temporarily hide seasonal content on your website rather than having to delete it.\u003C\u002Fli>\n\u003Cli>Schedule time-sensitive promotional content or event information to display automatically.\u003C\u002Fli>\n\u003Cli>Show or hide specific content on desktops, tablets, or mobile devices.\u003C\u002Fli>\n\u003Cli>Restrict content so it’s only visible to your customers, members, or subscribers.\u003C\u002Fli>\n\u003Cli>Display messaging to logged-out users, encouraging them to subscribe to your blog.\u003C\u002Fli>\n\u003Cli>Create unique marketing campaigns using query string parameters to display personalized messaging (\u003Ca href=\"https:\u002F\u002Fwww.blockvisibilitywp.com?bv_query=example\" rel=\"nofollow ugc\">See it in action\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Conditionally display elements in the Site Editor using advanced visibility logic.\u003C\u002Fli>\n\u003Cli>Increase visitor engagement and conversions with dynamic content and personalization.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Choose Block Visibility?\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>1. Easy to Use\u003C\u002Fstrong>\u003Cbr \u002F>\nBlock Visibility is the easiest way to create conditional blocks in WordPress. All with no code and just a few clicks!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>2. A Balance of Power and Simplicity\u003C\u002Fstrong>\u003Cbr \u002F>\nBlock Visibility is for you whether you’re building a sophisticated time-based promotional campaign for your customers or need to hide a few blocks on mobile. Don’t need certain functionality? Toggle it off in the plugin settings.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>3. Helpful Support and Continuous Development\u003C\u002Fstrong>\u003Cbr \u002F>\nBlock Visibility is designed, developed, and supported by Nick Diego with contributions from the broader Block Visibility community. Have an idea for additional block logic? Let us know in the plugin support forum.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.blockvisibilitywp.com\u002Fknowledge-base\u002F?bv_query=readme&utm_source=block_visibility&utm_medium=plugin&utm_campaign=readme\" rel=\"nofollow ugc\">Knowledge Base (Documentation)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fblock-visibility\u002F\" rel=\"ugc\">Support Forum\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For an \u003Cstrong>unbiased review\u003C\u002Fstrong>, the plugin was featured on \u003Ca href=\"https:\u002F\u002Fwptavern.com\u002Fshow-and-hide-content-via-the-block-visibility-wordpress-plugin\" rel=\"nofollow ugc\">WordPress Tavern\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Plays nice with others\u003C\u002Fh3>\n\u003Cp>Block Visibility is designed to work with \u003Cstrong>any\u003C\u002Fstrong> block and is tested with these top block libraries and plugins.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Compatibility + Direct Integration\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fblockvisibilitywp.com\u002Fknowledge-base\u002Fhow-to-use-the-woocommerce-control\u002F?bv_query=readme&utm_source=block_visibility&utm_medium=plugin&utm_campaign=readme\" rel=\"nofollow ugc\">WooCommerce\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fblockvisibilitywp.com\u002Fknowledge-base\u002Fhow-to-use-the-advanced-custom-fields-control\u002F?bv_query=readme&utm_source=block_visibility&utm_medium=plugin&utm_campaign=readme\" rel=\"nofollow ugc\">Advanced Custom Fields\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fblockvisibilitywp.com\u002Fknowledge-base\u002Fhow-to-use-the-how-to-use-the-easy-digital-downloads-control\u002F?bv_query=readme&utm_source=block_visibility&utm_medium=plugin&utm_campaign=readme\" rel=\"nofollow ugc\">Easy Digital Downloads\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fblockvisibilitywp.com\u002Fknowledge-base\u002Fhow-to-use-the-wp-fusion-control\u002F\" rel=\"nofollow ugc\">WP Fusion\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Stay Connected\u003C\u002Fh3>\n\u003Cp>Stay up-to-date on Block Visibility using the links below. The plugin is also being developed transparently on GitHub, so give it a star and follow along! 😉\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.blockvisibilitywp.com\u002F?bv_query=readme&utm_source=block_visibility&utm_medium=plugin&utm_campaign=readme\" rel=\"nofollow ugc\">Plugin Website\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.blockvisibilitywp.com\u002Fknowledge-base\u002F?bv_query=readme&utm_source=block_visibility&utm_medium=plugin&utm_campaign=readme\" rel=\"nofollow ugc\">Knowledge Base\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCDsTrm-1766AmNqwdzwJ4KQ\" rel=\"nofollow ugc\">YouTube Channel\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002FBlockVisibility\" rel=\"nofollow ugc\">Follow on Twitter\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fndiego\u002Fblock-visibility\" rel=\"nofollow ugc\">View on GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily show or hide any WordPress block. Schedule block visibility. Restrict blocks to specific screen sizes, user roles, post types, and more.",40000,558597,98,104,"2026-01-18T23:44:00.000Z","6.5",[104,105,106,107,108],"conditional-blocks","conditional-content","dynamic-content","restrict-blocks","visibility","https:\u002F\u002Fwww.blockvisibilitywp.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fblock-visibility.3.7.1.zip",{"slug":112,"name":113,"version":114,"author":115,"author_profile":116,"description":117,"short_description":118,"active_installs":119,"downloaded":120,"rating":51,"num_ratings":121,"last_updated":122,"tested_up_to":54,"requires_at_least":55,"requires_php":18,"tags":123,"homepage":127,"download_link":128,"security_score":129,"vuln_count":130,"unpatched_count":28,"last_vuln_date":131,"fetched_at":30},"visibility-logic-elementor","Visibility Logic for Elementor","2.5.0","StaxWP","https:\u002F\u002Fprofiles.wordpress.org\u002Fstaxwp\u002F","\u003Cp>\u003Cstrong>Visibility Logic\u003C\u002Fstrong> adds powerful \u003Cstrong>conditional display conditions\u003C\u002Fstrong> to every Elementor widget, section, and container. Control exactly who sees what, when, and on which device — without writing a single line of code.\u003C\u002Fp>\n\u003Cp>Hidden elements are \u003Cstrong>completely removed from the HTML\u003C\u002Fstrong> (not just hidden with CSS), keeping your pages fast and your content secure.\u003C\u002Fp>\n\u003Ch4>When to use Visibility Logic\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Restrict content\u003C\u002Fstrong> to logged-in users, specific roles, or subscribers\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Schedule content\u003C\u002Fstrong> to appear during a sale, event, or launch window\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Personalize pages\u003C\u002Fstrong> based on user meta, ACF custom fields, or device type\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Show\u002Fhide elements\u003C\u002Fstrong> for Desktop, Tablet, or Mobile visitors\u003C\u002Fli>\n\u003Cli>\u003Cstrong>A\u002FB test layouts\u003C\u002Fstrong> by showing different content to different user segments\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide empty sections\u003C\u002Fstrong> automatically when all child widgets are hidden\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Free Conditions\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>ACF Fields\u003C\u002Fstrong> (NEW) — Show\u002Fhide based on Advanced Custom Fields values on the current post or page. 7 operators: is empty, is not empty, equals, not equals, contains, is true, is false.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Device Type\u003C\u002Fstrong> (NEW) — Target Desktop, Tablet, or Mobile users with server-side User-Agent detection. Hidden elements are fully removed from HTML.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Role\u003C\u002Fstrong> — Logged in, logged out, or specific roles (Administrator, Editor, Subscriber, custom roles).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Meta\u003C\u002Fstrong> — Show\u002Fhide based on any user meta field value.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Date & Time\u003C\u002Fstrong> — Schedule visibility with “from” and “to” dates. Perfect for sales, events, and time-limited content.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Browser Type\u003C\u002Fstrong> — Target Chrome, Firefox, Safari, Edge, Opera, iPhone, Android, and more.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Flexbox Containers\u003C\u002Fstrong> — Full support for Elementor’s Flexbox containers, classic sections, and nested containers.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Hide When Empty\u003C\u002Fstrong> — Automatically hide a parent section\u002Fcontainer when all child widgets are hidden by visibility conditions.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>PRO Conditions\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Advanced ACF\u003C\u002Fstrong> — Repeater fields, options page, term meta, user fields, specific post\u002Fuser sources, AND\u002FOR logic with 17 operators.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Language\u003C\u002Fstrong> — Show\u002Fhide based on current language. Supports WPML, Polylang, and TranslatePress.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>URL Parameters\u003C\u002Fstrong> — Standalone query string conditions with repeater support and 9 operators.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Geo Location\u003C\u002Fstrong> — Display elements based on visitor’s country using MaxMind geolocation.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Dynamic Conditions\u003C\u002Fstrong> — Use all Elementor Pro Dynamic Tags as visibility conditions.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce\u003C\u002Fstrong> — Restrict content based on order history, active subscriptions, or customer status.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Easy Digital Downloads\u003C\u002Fstrong> — Restrict based on purchase history or subscription status.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Advanced User Meta\u003C\u002Fstrong> — Multiple user meta conditions with AND\u002FOR logic.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Post & Page, Taxonomy\u003C\u002Fstrong> — Show\u002Fhide based on current post type, specific pages, or taxonomy terms.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Archive\u003C\u002Fstrong> — Conditions based on post type archives and taxonomy archives.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>IP & Referrer\u003C\u002Fstrong> — Target visitors by IP address or referral source.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WordPress Conditional Tags\u003C\u002Fstrong> — Use any WordPress conditional tag as a visibility condition.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fallback Content\u003C\u002Fstrong> — Replace hidden elements with a custom text message or an Elementor template.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Copy\u002FPaste\u003C\u002Fstrong> — Right-click to copy visibility settings between widgets or sections.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Get \u003Ca href=\"https:\u002F\u002Fstaxwp.com\u002Fgo\u002Fvisibility-logic\" rel=\"nofollow ugc\">Visibility Logic Pro\u003C\u002Fa> and unlock all conditions.\u003C\u002Fp>\n\u003Ch4>How it works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Edit any page with Elementor\u003C\u002Fli>\n\u003Cli>Select a widget, section, or container\u003C\u002Fli>\n\u003Cli>Go to the \u003Cstrong>Visibility\u003C\u002Fstrong> tab (or Advanced \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Visibility Control)\u003C\u002Fli>\n\u003Cli>Enable conditions and configure your display rules\u003C\u002Fli>\n\u003Cli>Save — elements are shown or hidden on the live site based on your rules\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>More from StaxWP\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fstaxwp.com\u002Fgo\u002Fbuddybuilder\" rel=\"nofollow ugc\">BuddyBuilder — BuddyPress Builder for Elementor\u003C\u002Fa> — Build stunning BuddyPress communities with Elementor.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fstaxwp.com\u002Fgo\u002Faddons-for-elementor\" rel=\"nofollow ugc\">Elementor Addons & Widgets\u003C\u002Fa> — Powerful widgets to help you build stunning pages.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fstaxwp.com\u002Fgo\u002Fwoo-addons-for-elementor\u002F\" rel=\"nofollow ugc\">Woo Addons for Elementor\u003C\u002Fa> — Elementor enhancements for WooCommerce.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Privacy Policy\u003C\u002Fh4>\n\u003Cp>We use Appsero SDK to collect some telemetry data upon user’s confirmation. This helps us troubleshoot problems faster and make product improvements.\u003C\u002Fp>\n\u003Ch4>Found a bug?\u003C\u002Fh4>\n\u003Cp>Report security bugs through the \u003Ca href=\"https:\u002F\u002Fpatchstack.com\u002Fdatabase\u002Fvdp\u002Fvisibility-logic-elementor\" rel=\"nofollow ugc\">Patchstack Vulnerability Disclosure Program\u003C\u002Fa>. The Patchstack team helps validate, triage, and handle any security vulnerabilities.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>This plugin implements some functionality similar to:\u003Cbr \u002F>\n* Dynamic Content for Elementor (GPL v2 or later)\u003C\u002Fp>\n","Conditional visibility for Elementor — show or hide widgets based on user role, ACF fields, device type, date & time, browser and more.",30000,537422,57,"2026-02-23T22:13:00.000Z",[59,124,125,126,108],"dynamic-visibility","elementor","restrict-content","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fvisibility-logic-elementor","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvisibility-logic-elementor.2.5.0.zip",99,3,"2023-07-05 00:00:00",{"slug":133,"name":134,"version":135,"author":136,"author_profile":137,"description":138,"short_description":139,"active_installs":140,"downloaded":141,"rating":76,"num_ratings":27,"last_updated":142,"tested_up_to":54,"requires_at_least":143,"requires_php":144,"tags":145,"homepage":149,"download_link":150,"security_score":51,"vuln_count":151,"unpatched_count":28,"last_vuln_date":152,"fetched_at":30},"if-so","If-So Dynamic Content Personalization","1.9.6","If-So Dynamic Content","https:\u002F\u002Fprofiles.wordpress.org\u002Fifso\u002F","\u003Cp>Personalize any content! Add or replace content according to the visitor’s profile or interaction with the site.\u003C\u002Fp>\n\u003Cp>No coding required!\u003C\u002Fp>\n\u003Ch3>FOUR WAYS TO CREATE DYNAMIC CONTENT\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Conditional triggers – works with every page builder – \u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fhelp\u002Fdocumentation\u002Fhow-to-create-dynamic-content-trigger\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=dynamic-triggerTop\" rel=\"nofollow ugc\">Watch\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Conditional Gutenberg blocks – \u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fconditional-gutenberg-blocks\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=gutenbergTop\" rel=\"nofollow ugc\">Watch\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Conditional Elementor elements – \u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Felementor-personalization\" rel=\"nofollow ugc\">Watch\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Dynamic Keyword Insertion (DKI) shortcodes – \u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fhelp\u002Fdocumentation\u002Fdynamic-keyword-insertion\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=DKITop\" rel=\"nofollow ugc\">Watch\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Watch a short video (1:36):\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FyRroTk7EDF8?version=3&rel=0&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>WHY IF-SO?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Simple to use – No coding is required\u003C\u002Fli>\n\u003Cli>Works with any page builder\u003C\u002Fli>\n\u003Cli>100% compatible with all caching plugins (no need to disable the cache)\u003C\u002Fli>\n\u003Cli>A simple way to improve engagement and conversion rates\u003C\u002Fli>\n\u003Cli>New! Conditional Gutenberg Blocks and Elementor Widgets\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>……………………………………………………………\u003C\u002Fp>\n\u003Ch3>HOW IT WORKS\u003C\u002Fh3>\n\u003Ch4>All page builder users:\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Create a trigger \u003C\u002Fli>\n\u003Cli>Select a condition and set the personalized content version\u003C\u002Fli>\n\u003Cli>Optional – create more dynamic versions and set the default content\u003C\u002Fli>\n\u003Cli>Paste the shortcode wherever you want to display the content\u003Cbr \u002F>\nEvery time a page with the shortcode is loaded, one of the content versions will be displayed accordingly.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fhelp\u002Fdocumentation\u002Fhow-to-create-dynamic-content-trigger\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=dynamic-trigger\" rel=\"nofollow ugc\">Learn more >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Gutenberg and Elementor users\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Select the block or element\u003C\u002Fli>\n\u003Cli>On the side menu, select the condition to display the block\u002Felement\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Felementor-personalization\u002F\" rel=\"nofollow ugc\"> – More about conditional  Elementor Elements >>\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fconditional-gutenberg-blocks\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=gutenberg\" rel=\"nofollow ugc\"> – More about conditional  Gutenberg Blocks >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>……………………………………………………………\u003C\u002Fp>\n\u003Ch3>WHICH CONDITIONS CAN BE SET WITH IF-SO?\u003C\u002Fh3>\n\u003Cp>If-So offers a wide range of conditions. Here are examples of our most implemented conditions.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Most popular\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Geolocation – Show location-based content (\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Flocation-based-content-wordpress-plugin\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=geolocation\" rel=\"nofollow ugc\">examples >>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>Google Ads – Show content based on the user’s search term on Google Ads or related to the Facebook Ad the user was referred from (\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fgoogle-ads\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=google-ads\" rel=\"nofollow ugc\">examples >>\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>UTM Parameters – Show dynamic content based on UTM parameters or other query strings (\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fhelp\u002Fdocumentation\u002Futms\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=utm-parameters\" rel=\"nofollow ugc\">examples >>\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fpersonalization-examples?utm_source=WordPress&utm_medium=Readme&utm_campaign=1.5.1&utm_term=examples\" rel=\"nofollow ugc\">More usage examples >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Geolocation\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>City\u003C\u002Fli>\n\u003Cli>State\u003C\u002Fli>\n\u003Cli>Country\u003C\u002Fli>\n\u003Cli>Continent\u003C\u002Fli>\n\u003Cli>Time zone\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>User Behavior\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Browser Language \u003C\u002Fli>\n\u003Cli>Returning Visitor (pro)\u003C\u002Fli>\n\u003Cli>Device Type\u003C\u002Fli>\n\u003Cli>Logged-in User\u003C\u002Fli>\n\u003Cli>Days Since User Registration (pro)\u003C\u002Fli>\n\u003Cli>Pages Visited (pro)\u003C\u002Fli>\n\u003Cli>Referral Source (pro)\u003C\u002Fli>\n\u003Cli>Browser Type (pro)\u003C\u002Fli>\n\u003Cli>Operating System (pro)\u003C\u002Fli>\n\u003Cli>Number of Version Views (pro)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Date & Time\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Start & End Date (pro)\u003C\u002Fli>\n\u003Cli>Schedule (pro)\u003C\u002Fli>\n\u003Cli>Day of the Month (pro)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Marketing & Advertising\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Dynamic Link (pro)\u003C\u002Fli>\n\u003Cli>Page URL (pro)\u003C\u002Fli>\n\u003Cli>UTM Parameters (pro)\u003C\u002Fli>\n\u003Cli>Google Ads \u002F Facebook Ads (pro)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>WooCommerce\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Products in the Cart (pro)\u003C\u002Fli>\n\u003Cli>Products Purchased (pro)\u003C\u002Fli>\n\u003Cli>Units in Stock (pro)\u003C\u002Fli>\n\u003Cli>Total Spent (pro)\u003C\u002Fli>\n\u003Cli>Average Order Value (pro)\u003C\u002Fli>\n\u003Cli>Customer Details (pro)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Integrations (pro)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>WooCommerce Subscriptions\u003C\u002Fli>\n\u003Cli>WooCommerce Memberships\u003C\u002Fli>\n\u003Cli>MemberPress\u003C\u002Fli>\n\u003Cli>WishList Member\u003C\u002Fli>\n\u003Cli>WP Job Manager\u003C\u002Fli>\n\u003Cli>LearDash\u003C\u002Fli>\n\u003Cli>Easy Digital Downloads\u003C\u002Fli>\n\u003Cli>AffiliateWP\u003C\u002Fli>\n\u003Cli>Weglot\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=AboutTheConditions\" rel=\"nofollow ugc\">\u003Cstrong>All conditions >>\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>……………………………………………………………\u003C\u002Fp>\n\u003Ch3>Built-in stats\u003C\u002Fh3>\n\u003Cp>Get clear insights into your content performance! See real-time results with a built-in analytics system – how many times each version was displayed and how it affected the conversion rate.\u003C\u002Fp>\n\u003Cp>……………………………………………………………\u003C\u002Fp>\n\u003Ch3>THE EXTRA OPTIONS THAT MADE If-So THE #1 PERSONALIZATION PLUGIN\u003C\u002Fh3>\n\u003Cp>If-So is more than just an If-Then personalization solution. We consistently add new features so that no matter what your need is, you will be able to achieve it with If-So.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Audiences (segments)\u003C\u002Fstrong>\u003Cbr \u002F>\nAssign users into predefined audiences based on the user’s interaction with the site and then show content based on the user’s audience.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fhelp\u002Fdocumentation\u002Fsegments\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=audiences\" rel=\"nofollow ugc\">Learn more >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User self-selection form:\u003C\u002Fstrong>\u003Cbr \u002F>\nAllow users to select the content they will see by assigning themselves to an audience (segment).\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fdynamic-select-form\u002F\" rel=\"nofollow ugc\">Learn more >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Conditional pop-ups\u003C\u002Fstrong>\u003Cbr \u002F>\nCreate pop-ups that will be displayed based on any If-So condition.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fconditional-pop-ups\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=pop-ups\" rel=\"nofollow ugc\">Learn more >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Custom user profile fields (for logged-in users)\u003C\u002Fstrong>\u003Cbr \u002F>\nCreate a new field in the user’s profile, assign a value to that field, and show content based on the value.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fcustom-user-profile-fields-dynamic-content\u002F\" rel=\"nofollow ugc\">Learn more >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Dynamic content from CSV\u003C\u002Fstrong>\u003Cbr \u002F>\nCreate and manage thousands of dynamic content versions directly from a CSV file.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fdynamic-content-from-csv\u002F\" rel=\"nofollow ugc\">Learn more >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>……………………………………………………………\u003C\u002Fp>\n\u003Ch3>DYNAMIC KEYWORD INSERTION (DKI)\u003C\u002Fh3>\n\u003Cp>The Dynamic Keyword Insertion (DKI) option allows you to display values using shortcodes:\u003Cbr \u002F>\n* The user’s location: country, state, city, or continent\u003Cbr \u002F>\n* A value of a query string parameter\u003Cbr \u002F>\n* The user name\u003Cbr \u002F>\n* An event time – calculated according to the user time zone\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fhelp\u002Fdocumentation\u002Fdynamic-keyword-insertion?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=AllDKI\" rel=\"nofollow ugc\">And more… for all DKI shortcodes >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Examples for Dynamic Keyword Insertion shortcodes:\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>User’s Country\u003C\u002Fstrong>\u003Cbr \u002F>\nDisplay the user’s location: country, city, state, continent, or time zone.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[ifsoDKI type='geo' show='country']\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fgeolocation-dki\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=geo-dki\" rel=\"nofollow ugc\">More Geolocation DKI shortcode options >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Query String DKI\u003C\u002Fstrong>\u003Cbr \u002F>\nDisplay the value of any query string.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[ifsoDKI type=\"querystring\" parameter=\"YOUR-PARAMETER\" fallback=\"Your default value (optional)\"]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fquery-string-dki-shortcode\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=qs-dki\" rel=\"nofollow ugc\">More Geolocation DKI shortcode options >>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Auto-Local Time Display\u003C\u002Fstrong>\u003Cbr \u002F>\nShow an event time calculated according to the user’s time zone.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[ifsoDKI type='time' show='user-geo-timezone-sensitive' time='04\u002F25\u002F2022 08:00' format='n\u002Fj\u002Fo, G:i']\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.if-so.com\u002Fauto-local-time-display\u002F?utm_source=WordPress&utm_medium=Readme&utm_campaign=v2&utm_term=local-time-display-dki\" rel=\"nofollow ugc\">More Geolocation DKI shortcode options >>\u003C\u002Fa>\u003C\u002Fp>\n","Personalize any content! Add or replace content according to the visitor's profile and interaction with the site. No coding required!",8000,294374,"2026-01-12T11:56:00.000Z","4.0.1","",[20,106,146,147,148],"geolocatargeting","location","personalization","https:\u002F\u002Fwww.if-so.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fif-so.1.9.6.zip",8,"2025-09-03 00:00:00",{"attackSurface":154,"codeSignals":189,"taintFlows":197,"riskAssessment":198,"analyzedAt":205},{"hooks":155,"ajaxHandlers":185,"restRoutes":186,"shortcodes":187,"cronEvents":188,"entryPointCount":28,"unprotectedCount":28},[156,161,167,172,176,181],{"type":157,"name":158,"callback":159,"file":160,"line":121},"action","wpcf7_init","au_cf7_cf_add_controller_tags","controller-fields-for-contact-form-7.php",{"type":162,"name":163,"callback":164,"priority":165,"file":160,"line":166},"filter","au_cf7_cf_controller_shortcode_handler","au_cf7_cf_validation_filter",10,58,{"type":157,"name":168,"callback":169,"priority":170,"file":160,"line":171},"plugins_loaded","au_cf7_cf_init",20,60,{"type":157,"name":173,"callback":174,"priority":170,"file":160,"line":175},"wp_enqueue_scripts","au_cf7_cf_enqueue_assets",311,{"type":157,"name":177,"callback":178,"file":179,"line":180},"admin_enqueue_scripts","load_assets","includes\\admin.php",45,{"type":157,"name":182,"callback":183,"priority":13,"file":179,"line":184},"wpcf7_admin_init","add_tag_generators",46,[],[],[],[],{"dangerousFunctions":190,"sqlUsage":191,"outputEscaping":193,"fileOperations":28,"externalRequests":28,"nonceChecks":28,"capabilityChecks":28,"bundledLibraries":196},[],{"prepared":28,"raw":28,"locations":192},[],{"escaped":194,"rawEcho":28,"locations":195},59,[],[],[],{"summary":199,"deductions":200},"The static analysis of controller-fields-for-contact-form-7 v2.0.0 reveals an exceptionally strong security posture. There are no identified AJAX handlers, REST API routes, shortcodes, or cron events, resulting in zero attack surface and zero unprotected entry points. The code demonstrates excellent security practices with no dangerous functions, all SQL queries utilizing prepared statements, and all output being properly escaped. The absence of file operations, external HTTP requests, and any taint analysis findings further reinforces this positive assessment.\n\nThe vulnerability history for this plugin is also clean, with no recorded CVEs. This indicates a consistent and well-maintained security record. While the lack of nonce and capability checks is a point to note, given the absence of any exposed entry points, this weakness does not present an immediate risk in this specific version. The plugin's strengths lie in its minimal attack surface and robust internal code security practices.\n\nIn conclusion, controller-fields-for-contact-form-7 v2.0.0 appears to be a highly secure plugin based on the provided static analysis and vulnerability history. The developers have implemented sound security measures, and the lack of any discovered vulnerabilities or exploitable code paths is a significant positive indicator. The absence of specific security mechanisms like nonce and capability checks is overshadowed by the complete lack of exposed functionality that would necessitate them.",[201,203],{"reason":202,"points":34},"No nonce checks found",{"reason":204,"points":34},"No capability checks found","2026-03-16T21:57:20.706Z",{"wat":207,"direct":216},{"assetPaths":208,"generatorPatterns":211,"scriptPaths":212,"versionParams":213},[209,210],"\u002Fwp-content\u002Fplugins\u002Fcontroller-fields-for-contact-form-7\u002Fassets\u002Fcss\u002Fcf7-controller-fields.css","\u002Fwp-content\u002Fplugins\u002Fcontroller-fields-for-contact-form-7\u002Fassets\u002Fjs\u002Fcf7-controller-fields.js",[],[210],[214,215],"controller-fields-for-contact-form-7\u002Fassets\u002Fcss\u002Fcf7-controller-fields.css?ver=","controller-fields-for-contact-form-7\u002Fassets\u002Fjs\u002Fcf7-controller-fields.js?ver=",{"cssClasses":217,"htmlComments":223,"htmlAttributes":224,"restEndpoints":227,"jsGlobals":228,"shortcodeOutput":230},[218,219,220,221,222],"au-cf7-controller","wpcf7-list-item","wpcf7-list-item-first","wpcf7-list-item-last","wpcf7-exclusive-checkbox",[],[225,226],"data-collapse","data-id",[],[229],"cf7ControllerFields",[231,232,220,221],"\u003Cspan class=\"wpcf7-list-item","\u003Cspan class=\"wpcf7-list-item-exclusive"]