{"id":86751,"date":"2018-06-05T05:02:49","date_gmt":"2018-06-05T05:02:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/acf-field-for-contact-form-7\/"},"modified":"2026-03-23T07:25:04","modified_gmt":"2026-03-23T07:25:04","slug":"acf-field-for-contact-form-7","status":"publish","type":"plugin","link":"https:\/\/wol.wordpress.org\/plugins\/acf-field-for-contact-form-7\/","author":14983103,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.8.1","stable_tag":"1.8.1","tested":"6.9.4","requires":"6.0","requires_php":"8.1","requires_plugins":null,"header_name":"ACF Field For CF7","header_author":"KrishaWeb","header_description":"Adds a new 'Contact Form 7' field to the popular Advanced Custom Fields plugin.","assets_banners_color":"103c4c","last_updated":"2026-03-23 07:25:04","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/acf-field-for-contact-form-7\/","header_author_uri":"https:\/\/www.krishaweb.com\/","rating":4.7,"author_block_rating":0,"active_installs":10000,"downloads":68868,"num_ratings":11,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0":{"tag":"1.0","author":"krishaweb","date":"2018-06-05 10:58:29"},"1.1":{"tag":"1.1","author":"krishaweb","date":"2018-12-03 06:01:07"},"1.2":{"tag":"1.2","author":"krishaweb","date":"2018-12-19 05:04:18"},"1.3":{"tag":"1.3","author":"krishaweb","date":"2019-11-16 09:19:37"},"1.4":{"tag":"1.4","author":"krishaweb","date":"2020-01-10 06:35:54"},"1.5":{"tag":"1.5","author":"krishaweb","date":"2020-06-19 10:12:04"},"1.6":{"tag":"1.6","author":"krishaweb","date":"2022-11-18 05:10:16"},"1.7":{"tag":"1.7","author":"krishaweb","date":"2025-06-20 12:48:01"},"1.8":{"tag":"1.8","author":"krishaweb","date":"2026-03-23 06:47:35"},"1.8.1":{"tag":"1.8.1","author":"krishaweb","date":"2026-03-23 07:25:04"}},"upgrade_notice":[],"ratings":{"1":0,"2":1,"3":0,"4":0,"5":10},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3488610,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3488610,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3488610,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3488610,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3488633,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"landingPage\":\"\\\/wp-admin\\\/edit.php?post_type=acf-field-group\",\"plugins\":[\"advanced-custom-fields\",\"contact-form-7\",\"acf-field-for-contact-form-7\"],\"login\":true,\"features\":{\"networking\":true},\"preferredVersions\":{\"php\":\"latest\",\"wp\":\"latest\"},\"steps\":[{\"step\":\"setSiteOptions\",\"options\":{\"blogname\":\"Testing Mass Users Password Reset\"}},{\"step\":\"updateUserMeta\",\"meta\":{\"admin_color\":\"modern\"},\"userId\":1},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"acf-field-for-contact-form-7\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["1.0","1.1","1.2","1.3","1.4","1.5","1.6","1.7","1.8","1.8.1"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3315296,"resolution":"1","location":"assets","locale":""},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3315296,"resolution":"2","location":"assets","locale":""}},"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[2211,2217,358,16785,2240],"plugin_category":[59],"plugin_contributors":[149592,149593,130310],"plugin_business_model":[],"class_list":["post-86751","plugin","type-plugin","status-publish","hentry","plugin_tags-acf","plugin_tags-advanced-custom-fields","plugin_tags-contact-form","plugin_tags-contactform7","plugin_tags-field","plugin_category-utilities-and-tools","plugin_contributors-dilipbheda","plugin_contributors-girishpanchal","plugin_contributors-krishaweb","plugin_committers-krishaweb"],"banners":{"banner":"https:\/\/ps.w.org\/acf-field-for-contact-form-7\/assets\/banner-772x250.jpg?rev=3488610","banner_2x":"https:\/\/ps.w.org\/acf-field-for-contact-form-7\/assets\/banner-1544x500.jpg?rev=3488610","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/acf-field-for-contact-form-7\/assets\/icon-128x128.png?rev=3488610","icon_2x":"https:\/\/ps.w.org\/acf-field-for-contact-form-7\/assets\/icon-256x256.png?rev=3488610","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/acf-field-for-contact-form-7\/assets\/screenshot-1.jpg?rev=3315296","caption":""},{"src":"https:\/\/ps.w.org\/acf-field-for-contact-form-7\/assets\/screenshot-2.jpg?rev=3315296","caption":""}],"raw_content":"<!--section=description-->\n<p><strong>Ever struggled with placing Contact Form 7 forms exactly where you want on your web site?<\/strong><\/p>\n\n<p>Normally, to display a Contact Form 7 form, you need to copy a shortcode like <code>[contact-form-7 id=\"123\"]<\/code> and paste it in the right place. One wrong character and the form breaks. If you have 10 pages with different forms, managing all those shortcodes becomes a headache.<\/p>\n\n<p><strong>ACF Field for CF7 solves this.<\/strong><\/p>\n\n<p>It adds a simple dropdown field with help of <em>Advanced Custom Fields<\/em> to your page editor that lists all your Contact Form 7 forms. Just pick the form you want and it's done. It shows up on your page. No shortcodes to copy. No code to write. No mistakes.<\/p>\n\n<h4>Before vs After This Plugin<\/h4>\n\n<p><strong>Without this plugin:<\/strong>\n1. Create a form in Contact Form 7.\n2. Copy the shortcode.\n3. Paste it into your page, widget, or template.\n4. Hope you didn't mistype anything.\n5. Repeat for every page that needs a different form.<\/p>\n\n<p><strong>With this plugin:<\/strong>\n1. Create a form in Contact Form 7.\n2. Add a Advanced Custom Field for Contact Form 7 to your desired location.\n3. Pick Contact Form from a dropdown field.\n4. Done.<\/p>\n\n<h4>Key Features<\/h4>\n\n<p>\u2022 <strong>One-Click Form Selection<\/strong> \u2014 A clean dropdown in your editor lists every Contact Form 7 form. Pick one, save, done.\n\u2022 <strong>No Shortcodes Required<\/strong> \u2014 Forms render automatically on the front end. No copying, no pasting, no broken markup.\n\u2022 <strong>Client-Friendly<\/strong> \u2014 Content editors manage forms without developer help. Fewer support requests for you.\n\u2022 <strong>Ultra Lightweight<\/strong> \u2014 Only ~10 KB. Zero impact on site speed or performance.\n\u2022 <strong>Allow Null Option<\/strong> \u2014 Make the form field optional so editors can leave it empty when no form is needed.\n\u2022 <strong>Trusted by 10,000+ Sites<\/strong> \u2014 Actively installed and maintained since 2012.<\/p>\n\n<h4>For Developers: Quick Start<\/h4>\n\n<p>Register an ACF field with type <code>contact_form_7<\/code>, then output it in your template:<\/p>\n\n<pre><code>\/\/ Display the form directly\necho get_field( 'your_form_field' );\n<\/code><\/pre>\n\n<p>Need the CF7 form object instead of rendered HTML? Use this filter:<\/p>\n\n<pre><code>add_filter( 'acf_cf7_object', '__return_true' );\n<\/code><\/pre>\n\n<p>Now <code>get_field()<\/code> returns the WPCF7_ContactForm object for full control over the output.<\/p>\n\n<h4>Real-World Examples<\/h4>\n\n<p>\u2022 <strong>Landing Pages<\/strong> \u2014 Each landing page has its own lead capture form. Editors pick which form appears \u2014 no developer needed.\n\u2022 <strong>Service Pages<\/strong> \u2014 A web agency builds one template for all service pages. Each page shows a different inquiry form selected by the client.\n\u2022 <strong>Site-Wide Default Form<\/strong> \u2014 Use with ACF option pages to set one global \"Contact Us\" form across headers, footers, or sidebars.\n\u2022 <strong>Multi-Language Sites<\/strong> \u2014 Different forms for different languages, each selected per page through the editor.<\/p>\n\n<h4>ACF Field For CF7 Pro<\/h4>\n\n<p>Need more? The Pro version adds:<\/p>\n\n<p>\u2022 <strong>Gutenberg Block Support<\/strong> \u2014 Use CF7 forms inside the WordPress block editor.\n\u2022 <strong>Widget &amp; Theme Customizer<\/strong> \u2014 Place forms in widget areas and customizer panels.\n\u2022 <strong>Allow Null<\/strong> \u2014 Make the form field optional so editors can leave it empty when no form is needed.\n\u2022 <strong>Disable Forms<\/strong> \u2014 Mark one or more forms as disabled to prevent them from being selected.<\/p>\n\n<p><a rel=\"nofollow\" href=\"https:\/\/store.krishaweb.com\/product\/acf-field-contact-form-7-pro\/\">Download the ACF Field For CF7 Pro<\/a><\/p>\n\n<h4>Compatibility<\/h4>\n\n<p>This plugin works with:<\/p>\n\n<p>\u2022 ACF 5\n\u2022 ACF 6\n\u2022 Contact Form 7 5.9 and above\n\u2022 WordPress 6.0 and above\n\u2022 PHP 8.1 and above<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Copy the <code>acf-field-for-contact-form-7<\/code> folder into your <code>wp-content\/plugins<\/code> folder.<\/li>\n<li>Activate the Advanced Custom Fields: Contact Form 7 Field plugin via the plugins admin page.<\/li>\n<li>Create a new field via ACF and select the Contact Form 7 type.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20does%20this%20plugin%20actually%20do%20in%20simple%20terms%3F\"><h3>What does this plugin actually do in simple terms?<\/h3><\/dt>\n<dd><p>It adds a dropdown field to your website page editor. That dropdown shows all your Contact Form 7 forms. You pick one, save the page, and the form appears on your website. No technical knowledge needed.<\/p><\/dd>\n<dt id=\"what%20plugins%20do%20i%20need%20installed%20first%3F\"><h3>What plugins do I need installed first?<\/h3><\/dt>\n<dd><p>Two plugins must be active:\n1. <strong>Advanced Custom Fields<\/strong> (free or PRO) \u2014 this powers the dropdown field.\n2. <strong>Contact Form 7<\/strong> \u2014 this is where you create your forms.\nThis plugin connects the two. Without both, it has nothing to work with.<\/p><\/dd>\n<dt id=\"i%27m%20not%20a%20developer.%20can%20i%20still%20use%20this%3F\"><h3>I'm not a developer. Can I still use this?<\/h3><\/dt>\n<dd><p>Yes \u2014 but a developer (or someone comfortable with WordPress) needs to do a one-time setup: create the ACF field and add one line of code to your theme template. After that, you manage everything from the page editor with zero code.<\/p><\/dd>\n<dt id=\"i%27m%20a%20developer.%20how%20do%20i%20output%20the%20form%3F\"><h3>I'm a developer. How do I output the form?<\/h3><\/dt>\n<dd><p>Use standard ACF functions:<\/p>\n\n<pre><code>\/\/ Renders the full CF7 form HTML\necho get_field( 'your_field_name' );\n<\/code><\/pre>\n\n<p>To get the WPCF7_ContactForm object instead:<\/p>\n\n<pre><code>add_filter( 'acf_cf7_object', '__return_true' );\n$form_object = get_field( 'your_field_name' );\n<\/code><\/pre><\/dd>\n<dt id=\"does%20it%20work%20with%20acf%20pro%20features%20like%20flexible%20content%20and%20repeaters%3F\"><h3>Does it work with ACF PRO features like Flexible Content and Repeaters?<\/h3><\/dt>\n<dd><p>Yes. It registers as a standard ACF field type, so it works anywhere ACF fields work \u2014 including flexible content layouts, repeater fields, group fields, and option pages.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20the%20gutenberg%20block%20editor%3F\"><h3>Does it work with the Gutenberg block editor?<\/h3><\/dt>\n<dd><p>The free version works with ACF fields in PHP templates (classic approach). For native Gutenberg block support, the <a href=\"https:\/\/store.krishaweb.com\/product\/acf-field-contact-form-7-pro\/\">Pro version<\/a> is recommended.<\/p><\/dd>\n<dt id=\"will%20this%20slow%20down%20my%20site%3F\"><h3>Will this slow down my site?<\/h3><\/dt>\n<dd><p>No. The entire plugin is ~10 KB \u2014 smaller than a single image. It loads only what's needed and has no effect on page speed.<\/p><\/dd>\n<dt id=\"my%20form%20isn%27t%20showing%20on%20the%20front%20end.%20what%27s%20wrong%3F\"><h3>My form isn't showing on the front end. What's wrong?<\/h3><\/dt>\n<dd><p>Check these three things:\n1. Is Contact Form 7 activated?\n2. Did you select a form in the ACF field and save\/update the page?\n3. Does your theme template include <code>echo get_field( 'your_field_name' );<\/code> where the form should appear?<\/p>\n\n<p>If all three are correct and it still doesn't work, email us at support@krishaweb.com.<\/p><\/dd>\n<dt id=\"where%20can%20i%20report%20bugs%20or%20suggest%20features%3F\"><h3>Where can I report bugs or suggest features?<\/h3><\/dt>\n<dd><p>Email us at support@krishaweb.com \u2014 we'd love to hear from you.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.8.1<\/h4>\n\n<ul>\n<li>Fix plugin notice with ACF Pro and PHP deprecation warning.<\/li>\n<\/ul>\n\n<h4>1.8<\/h4>\n\n<ul>\n<li>Removed ACF 3 and ACF 4 support \u2014 now requires ACF 5 or 6.<\/li>\n<li>Added render_field_settings() with Allow Null toggle.<\/li>\n<li>Added format_value() for proper front-end shortcode rendering.<\/li>\n<li>Requires PHP 8.1 or later with strict types.<\/li>\n<li>Code quality improvements throughout.<\/li>\n<\/ul>\n\n<h4>1.7<\/h4>\n\n<ul>\n<li>Compatibility and Security update.<\/li>\n<\/ul>\n\n<h4>1.6<\/h4>\n\n<ul>\n<li>Improve plugin notice.<\/li>\n<\/ul>\n\n<h4>1.5<\/h4>\n\n<ul>\n<li>Improve plugin notice.<\/li>\n<\/ul>\n\n<h4>1.4<\/h4>\n\n<ul>\n<li>Added: ACF pro option page support.<\/li>\n<\/ul>\n\n<h4>1.3<\/h4>\n\n<ul>\n<li>Fixed: ACF Group field issue.<\/li>\n<\/ul>\n\n<h4>1.2<\/h4>\n\n<ul>\n<li>Tested upto 5.0<\/li>\n<\/ul>\n\n<h4>1.1<\/h4>\n\n<ul>\n<li>Filter added to get form object.<\/li>\n<\/ul>\n\n<h4>1.0<\/h4>\n\n<ul>\n<li>Initial Release.<\/li>\n<\/ul>","raw_excerpt":"Add a Contact Form 7 field to Advanced Custom Fields. Pick a form, display it. No shortcodes, no hassle.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/86751","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=86751"}],"author":[{"embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/krishaweb"}],"wp:attachment":[{"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=86751"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=86751"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=86751"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=86751"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=86751"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wol.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=86751"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}