Smart Grid-Layout Design for Contact Form 7
by Aurovrata Venet 4.5 (72 reviews)

Smart Grid-Layout Design for Contact Form 7

Pure CSS responsive grid layouts for contact form 7. It enables rich interlinking of your CMS data via taxonomy/posts populated dropdown fields.

Smart Grid-Layout Design for Contact Form 7 ranks #1,797 among WordPress.org plugins with 10,000+ active installations, a 4.5/5 rating from 72 reviews, and was last updated Aug 1, 2026. Data from WordPress.org, refreshed twice daily — see methodology.

Tested up to WP 7.0.4 (Current: 7.1)
v4.18.0 Current Version v4.18.0
Updated 1 month ago Last Update on 01 Aug, 2026
Refreshed 7 hours ago Last Refreshed on
Top 5% by installs Downloads -25.1% this week
View on WordPress.org
Rank
#1,797
No change
Active Installs
10K+
-35%
KW Avg Position
28.5
No change
Downloads
645.7K
+87 today
Support Resolved
0%
No change
Rating
90%
Review 4.5 out of 5
4.5 (72 reviews)

Next Milestone 20K

Total Progress 53.1%
10K+ 20K+
376
Ranks to Climb
-
Growth Needed
8,000,000
Active Installs
Pro

Unlock Exact Install Count

See the precise estimated active installs for this plugin, calculated from real-time ranking data.

  • Exact install estimates within tiers
  • Track install growth over time
  • Milestone progress predictions
Upgrade to Pro
Need 4,695 more installs to reach 20K+

Rank Changes

1,703 1,749 1,795 1,840 1,886 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
1,703 1,750 1,796 1,842 1,889 01-09-2026 02-09-2026 03-09-2026 04-09-2026 05-09-2026 06-09-2026 07-09-2026 08-09-2026 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
Current #1,797
Change
Best #

Upgrade to Pro

Unlock 30-day and 90-day rank history charts with a Pro subscription.

Upgrade Now

Active Installs Growth

Active Installs 0,000,000+
Growth +0.0%
Peak 0,000,000

Downloads Growth

40 50 60 70 80 90 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
40 50 60 70 80 90 100 110 01-09-2026 02-09-2026 03-09-2026 04-09-2026 05-09-2026 06-09-2026 07-09-2026 08-09-2026 09-09-2026 10-09-2026 11-09-2026 12-09-2026 13-09-2026 14-09-2026 15-09-2026 16-09-2026
Downloads
Growth
Peak

Upgrade to Pro

Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.

Upgrade Now

Reviews & Ratings

4.5
72 reviews
Overall 90%
5
59 (82%)
4
3 (4%)
3
2 (3%)
2
1 (1%)
1
7 (10%)

Security History

Source: WPVulnerability

1 known vulnerability on record · 0 in the last 24 months · checked 1 week ago

  1. Smart Grid-Layout Design for Contact Form 7 [cf7-grid-layout] < 4.11.9

    Fixed in v4.11.9

Track This Plugin

Get detailed analytics, keyword tracking, and position alerts delivered to your inbox.

Start Tracking Free

Plugin Details

Version
4.18.0
Last Updated
Aug 01, 2026
Requires WP
4.7+
Tested Up To
7.0.4
PHP Version
7.4 or higher

Support & Rating

Rating
★ ★ ★ ★ ★ 4.5
Reviews
72
Support Threads
0
Resolved
0%

Keywords

Upgrade to Pro

Unlock keyword rankings, search positions, and detailed analytics with a Pro subscription.

Upgrade Now

TL;DR

AI summary of the plugin's readme

This plugin is for WordPress site owners and developers building complex Contact Form 7 forms who need responsive grid layouts and CMS data integration. It solves the problem of designing rich, structured multi-section forms (tables, tabs, collapsible groups, dynamic dropdowns) without manual CSS grid coding.

  • Pure CSS responsive grid layouts
  • Graphical form editor
  • CodeMirror HTML syntax editor
  • Tabled input sections with Add Row
  • Tabbed repetitive field sections
  • Collapsible and toggled sections
  • Reusable sub-forms
  • Dynamic dropdown fields from CMS data

Frequently Asked Questions

Common questions about Smart Grid-Layout Design for Contact Form 7

Columns can be rearranged within a row by simply dragging and dropping using the handled icon in the columns head. You can also drag and drop a column into another row, if the target row has sufficient space to receive the column, else a warning msg will appear. In that case, make some room in the target row and/or resize the column so as to ensure it will fit in the row. Similarly, you can re-organise your rows within a given grid. Your initial form is grid. You can convert an existing column into a grid.
Simply create a new dynamic dropdown field using the added tag in the list of available tags and select the type of dynamic list you want to populate with. You create a list which will appear in the Information metabox in your edit page once you save your form. It uses the taxonomy management functionality of WordPress but is not associated with any posts as such. Simply edit the list by adding new terms to your list. These will appear in your dropdown field. Alternatively select an existing post from your dashboard and the post titles will be used to populate the dropdown. You also have the option to select a dynamic filter, and then the plugin will hook your functionality in your functions.php file to get your custom list.
When you create a dynamic dropdown, or a cf7 dropdown field, you add class:nice-select to your tag or 'nice-select' in the class text field option. The plugin will convert your dropdown into a beautiful nice-select field.
When you create a dynamic dropdown, or a cf7 dropdown field, you add class:select2 to your tag or 'select2' in the class text field option. The plugin will convert your dropdown into a powerful and searchable jQuery Select2 field. You can also enable select custom user options (known as tagging in the plugin documentation: https://select2.org/tagging) by adding the 'tags' class to your cf7 tag, class:tags.
When you convert a row into a collapsible section (see screenshot 8), you can check the toggle option which will insert 2 data attributes into your html row, with labels for the toggle switch on/off state. The default labels are 'yes' for on and 'no' for off. You can change the data-on and data-off attributes in the html text editor. Your form will display a toggle switch.
Navigate to the 'text' editor of the form, select all the html and delete the editor content. The plugin will create 1 default row with a single column in the 'grid' editor from which you can design your form afresh.
The plugin wraps each cf7 tag with the following html, <div class="field"> <label></label> [CF7-tag shortcode] <p class="info-tip"></p> </div> Furthermore, CF7 tags that are marked as required, have the following html <em>*</em> appended in the . This enables for smart looking fields. If you want to only modify a single column, simply find the column in the 'text' editor and modify the html wrapper as per your requirements. If you want to change these wrappers for all the fields, then you can use the hook filters, cf7sg_pre_cf7_field_html to change the html before the cf7 tag, cf7sg_post_cf7_field_html to change the html after the cf7 tag, and cf7sg_required_cf7_field_html to change the required field label markup. Each filter has 2 attributes passed to the hooked function, add_filter('cf7sg_pre_cf7_field_html', 'filter_pre_html', 10, 2); function filter_pre_html($html, $cf7_key){ //the $html string to change //the $cf7_key is a unique string key to identify your form, which you can find in your form table in the dashboard. }
Custom scripts The plugin will look for a JavaScript file js/{$cf7key}.js from the base of your theme root folder and load it on the page where your form is displayed. Create a js/ subfolder in your theme (or child theme folder), and create a file called <your-form-cf7key>.js in which you place your custom JavaScript code. In addition, if you need to localise your custom script, you can do so using the following action hook, add_action('smart_grid_register_custom_script', 'localise_custom_script', 10,1); function localise_custom_script($cf7_key){ if('my-form'!=$cf7_key) return; //your script is enqueued with the handle $cf7_key.'-js' wp_localize_script($cf7_key.'-js', 'customObj', array('key1'=>'value1')); } The $cf7key is the unique key associated with your form which you can find in the Information metabox of your form edit page. Alternatively you can now use the custom JS editor built into the form editor, See this video tutorial for more details. If you wish to wp_enqueue_script a general JavaScript file for all your forms, you can use the hook smart_grid_register_scripts, add_action('smart_grid_register_scripts', 'add_js_to_forms'); function add_js_to_forms(){ wp_enqueue_script('my-custom-script', '', array(), null, true); } custom styling Similarly, you can create a css/ subfolder in your theme folder and create a file in it called <your-form-cf7key>.css and place your custom styling for your form. The plugin will then load this CSS file on the page where your form is displayed. If you wish to wp_enqueue_styles a general CSS stylesheet file for all your forms, you can use the hook smart_grid_register_styles, add_action('smart_grid_register_styles', 'add_css_to_forms'); function add_css_to_forms(){ wp_enqueue_style('my-custom-style', '', array(), null, 'all'); } Alternatively you can now use the custom CSS editor built into the form editor, See this video tutorial for more details.
Yes, as of v1.1 of this plugin, toggled sections input fields are disabled when collapsed/unused, and therefore any fields within these sections are not submitted. So you can design fields to be required when toggled sections are used, and the fields will be validated accordingly too. Please note that in the back-end, these fields which are listed in the form layout but are not submitted are set eventually set as null in the filtered submitted data. So if you hook a functionality post the form-submission, be aware that you also need to test submitted values for NULL as opposed to empty.
Yes, with v1.1 you can the data-group attribute which by default is empty to regroup toggled sections and therefore ensure that only 1 of these grouped sections is used by a user. Edit your form in the html editor (Text tab) and fill the data-group attribute with the same value (no spaces) for each toggled section (div.container.with-toggle) you wish to re-group, <div class="container cf7sg-collapsible with-toggle" id="0sTn7L" data-group="group1"> <div class="cf7sg-collapsible-title"><span class="cf7sg-title toggled">Name &amp; Contact</span> <div class="toggle toggle-light" data-on="Yes" data-off="No"></div> </div> <div class="row"> <div class="columns one-third"> </div> <div class="columns one-third"> </div> <div class="columns one-third"> </div> </div> </div> <div class="container cf7sg-collapsible with-toggle" id="CNeqCy" data-group="group1"> <div class="cf7sg-collapsible-title"><span class="cf7sg-title toggled">Address</span> <div class="toggle toggle-light" data-on="Yes" data-off="No"></div> </div> <div class="row"> <div class="columns full"> </div> </div> </div>

Sign In / Register

You need to sign in or register to use this feature.