Mastering Contact Form 7: Essential Code Examples

Contact Form 7 is a powerful plugin for WordPress that allows you to create and manage multiple contact forms on your website. It's highly customizable and user-friendly, making it a popular choice among WordPress users. If you're looking to extend its functionality or customize it further, you'll need to understand how to write code for Contact Form 7. In this article, we'll provide you with comprehensive code examples to help you get started.

Website Contact Form
Website Contact Form

Before we dive into the code examples, let's ensure you have a basic understanding of how Contact Form 7 works. Once you've installed and activated the plugin, you can create a new form by going to 'Contact' in your WordPress dashboard and clicking on 'Add New'. Here, you can add various form fields like text boxes, dropdowns, and submit buttons. You can also customize the form's appearance and behavior using the settings provided.

WordPress Contact Form Setup: Complete Guide to Creating a Professional Form
WordPress Contact Form Setup: Complete Guide to Creating a Professional Form

Understanding Contact Form 7 Tags

Contact Form 7 uses a specific set of tags to define form fields and other elements. Understanding these tags is crucial for writing custom code. The basic syntax for a tag is [tag_name attribute="value"], where 'tag_name' is the type of field or element you want to create, and 'attribute' is a key-value pair that customizes the tag's behavior.

Contact Form UI Design | Lignt and Dark Mode | Boltstack.dev
Contact Form UI Design | Lignt and Dark Mode | Boltstack.dev

For example, to create a text box with the label 'Name', you would use the following tag: [text your-name "Name"]

Commonly Used Tags

the contact page for an email marketing and sponsored business opportunity portal, which is now available
the contact page for an email marketing and sponsored business opportunity portal, which is now available

Here are some of the most commonly used Contact Form 7 tags:

  • [text] - Creates a single-line text box.
  • [textarea] - Creates a multi-line text box.
  • [email] - Creates an email input field with built-in validation.
  • [url] - Creates a URL input field with built-in validation.
  • [tel] - Creates a telephone number input field.
  • [number] - Creates a numeric input field.
  • [select] - Creates a dropdown menu with options.
  • [checkbox] - Creates a checkbox field.
  • [radio] - Creates a radio button field.
  • [submit] - Creates a submit button for the form.

Customizing Tags with Attributes

Contac Form
Contac Form

You can customize the behavior of these tags using various attributes. For example, to make a text box required, you can add the 'required' attribute like this: [text your-name required "Name"]

To learn more about the available attributes for each tag, you can refer to the official Contact Form 7 documentation: Contact Form 7 Tags

Using Contact Form 7 in Your Theme's Files

Contact Us Page Design
Contact Us Page Design

To use Contact Form 7 in your theme's files, you'll need to know how to display the form and handle the submitted data. Contact Form 7 provides several functions and hooks to help you achieve this.

First, let's look at how to display a form using the `wpcf7_form` shortcode. This shortcode takes the form ID as an argument. For example, to display a form with ID 123, you would use the following code: `[wpcf7_form "123"]`

20 Beautiful CSS Contact Forms Code Examples - OnAirCode
20 Beautiful CSS Contact Forms Code Examples - OnAirCode
25 Amazingly Creative Contact Forms
25 Amazingly Creative Contact Forms
Klyro - Portfolio & Agency Webflow Template
Klyro - Portfolio & Agency Webflow Template
Free Contact Form v6 - HTML/CSS Template 2026 - Colorlib
Free Contact Form v6 - HTML/CSS Template 2026 - Colorlib
Contact Form Templates | Free Online Forms
Contact Form Templates | Free Online Forms
Contact Details Update Form Template
Contact Details Update Form Template
Simply, HERE. - AKQA
Simply, HERE. - AKQA
an email form with the words, let's work together and other ways to reach me
an email form with the words, let's work together and other ways to reach me
the contact form page for an email to someone on their phone or laptop, which is not
the contact form page for an email to someone on their phone or laptop, which is not
Free Online Form Builder & Form Creator for 2026 | Jotform
Free Online Form Builder & Form Creator for 2026 | Jotform
40 Best Free Inquiry Form Templates 2026 - Colorlib
40 Best Free Inquiry Form Templates 2026 - Colorlib
MNyamwezi (@UReagan) on X
MNyamwezi (@UReagan) on X
Goodkids - Contact form - Awwwards
Goodkids - Contact form - Awwwards
the contact form
the contact form
the contact form page for wordpress
the contact form page for wordpress
Html CSS Responsive Form Design With Full Code Free Template
Html CSS Responsive Form Design With Full Code Free Template
How to create Contact form Using google form Free
How to create Contact form Using google form Free
GOOGLE FORM PLEASE DO IT
GOOGLE FORM PLEASE DO IT
Contact Pages - Awwwards
Contact Pages - Awwwards
Clayo - Contact Website Design Ideas | website template | Design
Clayo - Contact Website Design Ideas | website template | Design

Displaying a Form Using a Function

If you want to display a form using a function instead of a shortcode, you can use the `wpcf7` function. Here's an example:

echo do_shortcode( '[wpcf7_form "123"]' );

This code will output the form with ID 123 wherever you place it in your theme's files.

Handling Form Submissions

When a user submits a form, Contact Form 7 triggers the `wpcf7_mail_sent` action hook. You can use this hook to perform actions after a form has been submitted successfully. Here's an example of how to display a success message:

add_action( 'wpcf7_mail_sent', 'my_form_sent_message' );

function my_form_sent_message( $contact_form ) {

echo '

';

}

This code will display a success message after a form has been submitted successfully.

Creating Custom Form Templates

Contact Form 7 allows you to create custom form templates using the Template feature. This lets you create reusable form templates with specific fields and layouts. To create a new template, go to 'Contact' in your WordPress dashboard, click on 'Templates', and then click on 'Add New'.

Here, you can add form fields using the same tags we discussed earlier. Once you've created your template, you can use it in any form by selecting it from the 'Template' dropdown menu when editing a form.

Including Custom CSS in Your Templates

To add custom CSS to your form templates, you can use the 'Additional Settings' section when editing a template. Here, you can add custom CSS rules that will be applied to the form. For example:

.my-form-class {

background-color: #f0f0f0;

padding: 20px;

}

This code will apply a background color and padding to the form with the class 'my-form-class'.

Using the `wpcf7_before_form_tags` Filter

If you want to add custom HTML or PHP code to your form templates, you can use the `wpcf7_before_form_tags` filter. This filter allows you to modify the form tags before they are output. Here's an example:

add_filter( 'wpcf7_before_form_tags', 'my_custom_form_tags' );

function my_custom_form_tags( $form_tags ) {

$form_tags .= '

My custom HTML goes here
';

return $form_tags;

}

This code will add a custom div element to the form with the text 'My custom HTML goes here'.

In conclusion, Contact Form 7 offers a wide range of customization options for creating and managing contact forms on your WordPress website. By understanding the plugin's tags, functions, and hooks, you can extend its functionality and create unique forms that meet your specific needs. Whether you're a beginner or an experienced developer, Contact Form 7 provides the tools you need to create powerful and engaging forms for your users.