DTX – Dynamic Text Extension for Contact Form 7
Contact Form 7 is an excellent WordPress plugin and one of the top choices of free WordPress plugins for contact forms. DTX – Dynamic Text Extension for Contact Form 7 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: Auto-filling a URL or just getting the domain name or path Auto-filling a post ID, title, or slug Auto-filling a title, URL, or slug for the current page Pre-populating a product number Referencing other content on the site Populating with post or page info Populating with the current user’s info Populating with custom and meta fields Generating unique identifiers for support tickets Getting a list of post categories or other custom taxonomies Getting a value from a cookie Getting custom theme modifications Any value using custom shortcodes The possibilities are endless! View Demo For over 10 years, DTX only handled and form fields, but version 4 finally introduces more: email URL tel (for phone numbers) number range (slider) textarea (multiline text) drop-down menu (select field) checkboxes radio buttons date submit (yes, a submit button where you can have dynamic text!) WHAT DOES IT DO? 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 get_bloginfo() function, among others. See below for included shortcodes. Don’t see the shortcode you need on the list? You can write a custom one! 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. Dynamic Value The bread and butter of this plugin, set a dynamic value! This field can take any shortcode, with two important provisions: The shortcode should NOT include the normal square brackets ([ and ]). So, instead of [CF7_GET key='value'] you would use CF7_GET key='value'. Any parameters in the shortcode must use single quotes. That is: CF7_GET key='value' and not CF7_GET key="value" Dynamic Placeholder 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: The text/shortcode must first have apostrophes converted to it’s HTML entity code, ' After that, it must be URL encoded so that spaces become %20 and other non-alphanumeric characters are converted. 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. Learn more and see examples from the DTX Knowledge base. Compatible with Caching Plugins DTX is cache friendly! You can set a field to be calculated after the page loads by setting the dtx_pageload attribute to any dynamic form tag. 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. This is best for dynamic form fields that: gets the current URL gets a value from the URL query gets a value from a cookie gets the current user’s info generates a unique identifier (GUID) For dynamic fields that are page-specific, it’s perfectly safe to cache those values. For example, dynamic form fields that: getting the page or post’s ID, title, or slug getting post meta for the current page getting the post’s assigned categories, tags, or other custom taxonomy getting site info getting theme modification values 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. Learn more and see examples from the DTX Knowledge base. Read Only Form Fields Check this box if you do not want to let users edit this field. It will add the readonly attribute to the input form field. This feature is not available for dynamic hidden form tags. Obfuscate Values for Enhanced Privacy 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! HOW TO USE IT 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. How to Obfuscate Values All of the shortcodes included with the DTX plugin allow the obfuscate attribute that you can set to any truthy value to provide an additional layer of security for sensitive data. The Contact Form 7 tag with obfuscation turned on would look like this: [dynamictext user_email "CF7_get_current_user key='user_email' obfuscate='on'"] How to Enable Cache-Friendly Mode All of the dynamic form tags can be enabled for processing on the frontend of the website, or the client-side, by adding the dtx_pageload attribute to the Contact Form 7 form tag. In the form editor of Contact Form 7, your form tag would look like: [dynamictext current_url dtx_pageload "CF7_URL"] If using the tag generator, it’s as simple as checking a box! INCLUDED SHORTCODES 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! Current URL or Part Retrieve the current URL: CF7_URL In the form editor of Contact Form 7, your form tag would look like: [dynamictext dynamicname "CF7_URL"] Optional parameter: part, which will return a parsed part of the URL. Valid values are host, query, and path Host: Just the domain name and tld [dynamictext host “CF7_URL part=’host'”] Query: The query string after the ?, if one exists [dynamictext query “CF7_URL part=’query'”] Path: The URL path, for example, /contact, if one exists [dynamictext path “CF7_URL part=’path'”] Learn more and see examples from the DTX Knowledge base. Referrer URL Get the referral URL, if it exists. Note that this is not necessarily reliable as not all browsers send this data. CF7 Tag: [dynamictext dynamicname "CF7_referrer"] Learn more and see examples from the DTX Knowledge base. Current Page Variables 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: Built-in shortcode: CF7_get_current_var Required attribute: key Possible values for key include: id title url (an alias for CF7_URL) slug featured_image terms (an alias for CF7_get_taxonomy) For pages that use a WP_POST object, this acts as an alias for CF7_get_post_var so those attributes work here as well. For author pages, this acts as an alias for CF7_get_current_user so those attributes work here as well. In the form editor of Contact Form 7, your form tag’s value could look like: CF7_get_current_var key='title' And then the full form tag would be: [dynamictext dynamicname "CF7_get_current_var key='title'"] Learn more and see examples from the DTX Knowledge base. Post/Page Info 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: CF7_get_post_var key='title' Contact > Dynamic Text Extension > Meta Key Allow List. More Information The dynamic value input becomes: CF7_get_custom_field key='my_custom_field' And the tag looks like this: [dynamictext dynamicname "CF7_get_custom_field key='my_custom_field'"] For the purposes of including an email address, you can obfuscate the custom field value by setting obfuscate=’on’ in the shortcode like this: [dynamictext dynamicname “CF7_get_custom_field key=’my_custom_field’ obfuscate=’on'”] Learn more and see examples from the DTX Knowledge base. Featured Images & Media Attachments Retrieve the current post’s featured image, the featured image of a different page, or any attachment from the Media Library with this shortcode! The base shortcode is simply: CF7_get_attachment which returns the absolute URL of the current page’s featured image. By setting the post_id attribute to a post ID, you can get the featured image of another page. By setting the id attribute to an attachment ID, you can get the absolute URL of any image uploaded to your WordPress website. By setting the size attribute to any size registered on your website, you can get a specific image size. Want to return the attachment ID instead of the URL? Also not a problem! Just set return='id' in the shortcode. 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: [dynamictext input_name “CF7_get_attachment post_id=’123′ return=’id'”] If I wanted to get a specific image at a specific size, I can use this: [dynamictext input_name “CF7_get_attachment id=’123′ size=’thumbnail'”] The only two attributes that can’t play together is id and post_id. If both are specified, it will get the attachment specified by id and completely ignore the post_id attribute. If neither are specified, then it looks to the current featured image assigned to the global $post object. Learn more and see examples from the DTX Knowledge base. Current User Info & User Meta Get data about the current logged-in user. Dynamic value: CF7_get_current_user key='user_displayname' CF7 Tag: [dynamictext dynamicname "CF7_get_current_user"] 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. More Information Valid values for key include: ID user_login display_name user_email user_firstname user_lastname user_description But also custom meta user keys! For the purposes of including an email address, you can obfuscate the value by setting obfuscate=’on’ in the shortcode like this: [dynamictext dynamicname “CF7_get_current_user key=’user_email’ obfuscate=’on'”] Learn more and see examples from the DTX Knowledge base. Site/Blog Info Want to grab some information from your blog like the URL or the site name? Use the CF7_bloginfo shortcode. For example, to get the site’s URL: Enter the following into the “Dynamic Value” input: CF7_bloginfo show='url' Your Content Form 7 Tag will look something like this: [dynamictext dynamicname "CF7_bloginfo show='url'"] Your form’s dynamicname text input will then be pre-populated with your site’s URL Learn more and see examples from the DTX Knowledge base. Theme Options Want to retrieve values from your active theme’s Customizer? Now you can with the CF7_get_theme_option shortcode. Learn more and see examples from the DTX Knowledge base. HTTP GET Variables Want to use a variable from the PHP $_GET array? Just use the CF7_GET shortcode. For example, if you want to get the foo parameter from the url http://mysite.com?foo=bar Enter the following into the “Dynamic Value” input: CF7_GET key='foo' Your Content Form 7 Tag will look something like this: [dynamictext dynamicname "CF7_GET key='foo'"] Your form’s dynamicname text input will then be pre-populated with the value of foo, in this case, bar Learn more and see examples from the DTX Knowledge base. HTTP POST Variables Grab variables from the PHP $_POST array. The shortcode is much like the GET shortcode: Dynamic value: CF7_POST key='foo' Your Content Form 7 Tag will look something like this: [dynamictext dynamicname "CF7_POST key='foo'"] Learn more and see examples from the DTX Knowledge base. Cookie Values 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 CF7_get_cookie shortcode. It only needs a key attribute. Dynamic value: CF7_get_cookie key='foo' Your Content Form 7 Tag will look something like this: [dynamictext dynamicname "CF7_get_cookie key='foo'"] Learn more and see examples from the DTX Knowledge base. GUID 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: CF7_guid In the form editor of Contact Form 7, your form tag would look like: [dynamictext dynamicname "CF7_guid"] Learn more and see examples from the DTX Knowledge base.
Top keywords
- form49×2.10%
- cf745×1.93%
- dynamic32×1.37%
- url29×1.25%
- dtx26×1.12%
- shortcode26×1.12%
- value26×1.12%
- current25×1.07%
- key25×1.07%
- post24×1.03%
- tag21×0.90%
- contact20×0.86%
WPForms – AI Form Builder for WordPress – Contact Forms, Payment Forms, Survey Form, Quiz & More
WordPress Contact Form Builder Plugin WPForms is an AI drag & drop WordPress form builder that’s EASY and POWERFUL. Create contact forms, feedback forms, subscription forms, payment forms (including Stripe, Square & PayPal), and other types of forms for your site in minutes with just a few clicks! At WPForms, user experience is our #1 priority. Our pre-built form templates and workflows make WPForms the most beginner-friendly contact form plugin on the market. You don’t have to hire a developer. Create a form in less than 5 minutes with our drag & drop form builder, using a template or just asking AI to get a head start. WPForms Pro This plugin is the Lite version of WPForms Pro, which comes with email subscription forms, multi-page contact forms, file uploads, conditional logic, and extra payment integrations. Click here to purchase the best premium WordPress contact form plugin now! AI-Powered Drag & Drop Contact Form Builder Create custom contact forms in minutes with our easy-to-use drag and drop online form builder or just ask AI to build it for you. But don’t just take our word for it. See what WordPress experts are saying: WPForms is by far the easiest form plugin to use. My clients love WPForms and it’s one of the few plugins they can use without any training. As a developer I appreciate how fast, modern, clean and extensible it is. Bill Erickson – Expert WordPress Consultant Pre-built Form Templates WPForms comes with 2100+ pre-built form templates. Whether you’re looking to create a simple contact form, marketing form, request a quote form, donation form, payment order form, registration form, survey form, quiz form, Stripe payment form, or a subscription form, we have a form template already prepared and ready to use. Mobile Ready, SEO Friendly, and Optimized for Speed WPForms contact forms are 100% responsive and mobile-friendly. We optimized every query on the frontend and the backend to ensure that it’s one of the fastest WordPress contact form plugins. You can embed your contact form on any page with an optimized title and description, so WPForms is one of the most SEO friendly contact form plugins too. Fields & Features You Need to Succeed With star ratings, file uploads, repeater fields, survey fields, and multi-page contact forms, you can easily build the right custom form for your site’s needs. Plus, integrate your contact forms with an email marketing service in just a few steps and collect payments with Stripe, PayPal, and Square for bookings and orders without the need for a dedicated eCommerce plugin. See what one business owner has to say about their WPForms contact form: As a business owner, time is my most valuable asset. WPForms allows me to create smart contact forms with just a few clicks. With their pre-built form templates and the drag & drop builder, I can create a new form that works in less than 2 minutes without writing a single line of code. Well worth the investment. David Henzel – Co-founder of MaxCDN Surveys & Polls Create custom survey forms like Survey Monkey. Our WordPress survey plugin addon comes with smart survey fields including Likert scale, star ratings, and NPS. Embed your surveys and polls anywhere in WordPress. Use our survey reporting tools to customize graphs, export them for presentations, and display aggregate results. You can also share poll results instantly when collecting votes. Default WordPress Forms Aside from building simple contact forms, WPForms also helps you create better default WordPress forms, like custom WordPress login forms and custom WordPress user registration forms. Create a password-protected contact form or even a members-only contact form. Bloggers and publishers can use our WordPress post submission forms to accept guest posts, testimonials, and more. Payment Forms, Donation Forms, Booking Forms, and More While WPForms started out as a contact form plugin, it has evolved into a powerful custom forms solution for any type of payment or booking form. WPForms integrates with PayPal, Stripe, Square Payments, Authorize.Net, and Mercado Pago so you can easily accept credit card payments or take payments via PayPal. Bonus: you can also take signatures. We’re proud to be a Stripe Verified Partner. This partnership allows us to build the best Stripe integration with early access to features. You can use our Stripe integration to accept both one-time payments as well as recurring payments while syncing all form data to your Stripe account. Custom Calculator Forms Using the WPForms Calculations addon, you can build custom formulas and display results on the frontend. Create simple arithmetic calculations or build complex conditional calculations with rounded values, averages, time ranges, and more! It’s the best calculator plugin for WordPress. Forms Optimized for Conversions With our Form Pages addon, you can create distraction-free custom form landing pages to increase conversions. To improve form completion rates, we created Conversational Forms which helps you make your feedback forms feel more human by adding an interactive layout. (See Conversational Forms Demo). Easy to Customize and Extend You can easily customize your contact forms with our section dividers, HTML blocks, and CSS. Embedding forms in Elementor and Divi has never been easier thanks to our native integrations. We also know that our developer friends may want more control, so we added tons of hooks and filters. Full WPForms Feature List Online form builder – powerful drag & drop contact form builder. Create WordPress contact forms, payment forms, and other online forms without writing any code. 100% mobile responsive. GDPR friendly. Payment Forms – Take payments, donations, down payments, recurring payments, service payments with our Stripe (FREE) integration. Form templates pre-built and ready to import. Form styling for fields, labels, and buttons. Spam protection built in, plus integrations with hCaptcha, Google reCAPTCHA, and Cloudflare Turnstile. AI Forms to automatically create and refine forms through natural conversation. Instant form notifications via email. Custom form confirmations with success messages or thank you pages. Smart phone field that adapts to your visitor’s location. AI Choices to automatically populate Multiple Choice, Checkboxes, and Dropdown field options. Coupons for free shipping and sale discounts. Calculator forms for payment, shipping, billing, and more. File upload fields for user submissions. Multi-page forms with progress bars. Smart conditional logic to show or hide fields. Repeater field that enables the person filling out the form to easily add another field or group of fields to fill out. Perfect for group registration forms, custom order forms, and more. Signatures for agreements or payment forms. User registration forms and custom login forms. Post submission forms to collect user-generated content. Geolocation to collect location data along with submissions. Surveys and Polls with interactive reports. Quizzes with graded tests, personality quizzes, and scored assessments, plus AI-generated questions. Form abandonment detection to collect partial form submissions. Form locker to control access using passwords, dates, and more. Offline forms to collect submissions without an internet connection. Form landing pages to boost conversions. Conversational forms to boost overall completion rates. Lead forms to get more submissions with multi-step layouts. Webhooks to send data without third party connectors. User Journey reports so you know which content is driving form conversions. Save and Resume to let visitors save and come back later. Entry Automation to export and delete form entries on a daily, weekly, or monthly basis. Integrations Google Sheets Zapier PayPal Commerce Stripe – We’re a Stripe Verified Partner for Payments. Square Authorize.Net Mercado Pago Mailchimp AWeber Campaign Monitor GetResponse Constant Contact Airtable Notion Drip ActiveCampaign HubSpot Brevo MailerLite MailPoet ConvertKit Klaviyo SendGrid Salesforce Slack Dropbox Google Calendar Google Drive Twilio Pipedrive Make Zoho CRM You can see why WPForms is the best WordPress contact form plugin on the market! Want to unlock these features? Upgrade to our Pro version. Credits This plugin is created by Syed Balkhi. Branding Guidelines WPForms® is a registered trademark of WPForms LLC. When writing about the contact form plugin by WPForms, please make sure to uppercase the initial 3 letters. WPForms (correct) WP Forms (incorrect) wpforms (incorrect) wpform (incorrect) Notes WPForms is absolutely, positively the most beginner-friendly WordPress contact form plugin on the market. It is both easy and powerful. We took the pain out of creating online forms and made it easy. Check out all WPForms features. Also, I’m the founder of WPBeginner, the largest WordPress resource site for beginners. It was a huge priority for me to make a WordPress contact form plugin that beginners can use without any training. I feel that we have done that here. I hope you enjoy using WPForms. Thank you, Syed Balkhi