Plugin Directory

Test out the new Plugin Directory and let us know what you think.

Constant Contact for WordPress

Integrate Constant Contact into your website with this full-featured plugin.

The plugin Requires PHP 5.5

Version 4.0 changes requirements for your server. If you upgrade and the upgrade doesn't work for you, you can downgrade to the previous version of the plugin.

Why? Because Constant Contact's official code requires PHP 5.5.

Ask your host about upgrading your server to 5.5. If they say no, chances are you should find a new host; 5.5 has long been available, and earlier versions of PHP are no longer secure.

Starting with Version 4.0, the Constant Contact Plugin requires PHP Version 5.5 or higher. Please contact your hosting provider support and ask them to upgrade your server.

We apologize for the inconvenience, but technical requirements changed.The good news? Once you upgrade your PHP version, your site will be faster and more secure.

Here’s how to upgrade your PHP version for popular web hosts:

If you can’t upgrade your PHP version

You can use Constant Contact's Sign-up Form and add the code to a widget or a page. This will allow your visitors to sign up for your newsletters.

Do I need a Constant Contact account for this plugin?

This plugin requires a Constant Contact account.

Constant Contact is a great email marketing company -- their rates are determined by the number of contacts in your list, not how many emails you send. This means you can send unlimited emails per month for one fixed rate! Give it a test run.

Is there shortcode support?

Form Shortcode

There is shortcode support for the Form Designer forms: [constantcontactapi] with the following options:

'formid' => 0, // REQUIRED
'before' => null,
'after' => null,
'redirect_url' => false,
'lists' => array(),
'title' => '',
'exclude_lists' => array(),
'description' => '',
'show_list_selection' => false,
'list_selection_title' => 'Add me to these lists:',
'list_selection_format' => 'checkbox'

So to add a form, you would add the following in your content: [constantcontactapi formid="3"]

Event Shortcode

To show event details, you can use the [eventspot] shortcode with the following options:

'id' => null, // Show a specific event; enter Event ID (found on the Events page) to use
'limit' => 3, // Number of events to show by default
'showdescription' => true, // Show event Description
'datetime' => true, // Show event Date & Time
'location' => false, // Show event Location
'map' => false,  // Show map link for Location (if Location is shown)
'calendar' => false, // Show "Add to Calendar" link
'directtoregistration' => false, // Link directly to registration page, rather than event homepage
'newwindow' => false, // Open event links in a new window
'style' => true // Use plugin styles. Disable if you want to use your own styles (CSS)

Sample Event Shortcodes

  • To show event details for 5 events using the default settings, you would use [eventspot limit=3]
  • To show event details for a single event with the id of abc123 and also show the location details and map link, you would use: [eventspot id="abc123" location=true map=true]
  • To use your own CSS file, you would use [eventspot style=false]

How do I use the new `apply_filters()` functionality? (Added 1.1)

If you want to change some code in the widget, you can use the WordPress add_filter() function to achieve this.

You can add code to your theme's functions.php file that will modify the widget output. Here's an example:

function my_example_function($widget) {
    // The $widget variable is the output of the widget
    // This will replace 'this word' with 'that word' in the widget output.
    $widget = str_replace('this word', 'that word', $widget);
    // Make sure to return the $widget variable, or it won't work!
    return $widget;
add_filter('constant_contact_form', 'my_example_function');

You can modify the widget output by hooking into any of the filters below in a similar manner.

To modify the Events widget output, start with the following code, again in your theme's functions.php file:

add_filter('cc_event_output_single', 'cc_event_output_single', 1, 2);

function cc_event_output_single($output, $pieces = array('start'=> '','title'=>'','description'=>'','date'=>'','calendar'=>'','location' => '', 'end'=>'')) {
    // The pieces of each event are stored in the $pieces array
    // So you can modify them and cut and paste in what order you
    // want the pieces to display
    return $pieces['start'].'Description'.$pieces['description'].$pieces['date'].$pieces['end'];

Some example filters:

  • Entire form output: constant_contact_form
  • Successful submission message: constant_contact_form_success
  • Form description text: constant_contact_form_description (after it has been modified by wpautop())
  • Error message: constant_contact_form_errors
  • Submit button: constant_contact_form_submit (includes entire input string)

How do I use the Form Designer?

Using the Form Designer

  1. Install this plugin.
  2. Activate the Constant Contact API: Form Designer plugin
  3. Configure the settings on the form designer by updating the settings in the boxes on the left.
  4. Next to "Form Name" where it says "Enter form name here," enter your form name.
  5. Once you have configured and named your form, click Save Form.
  6. In the Appearance menu of the administration, click the Widgets link.
  7. Drag the widget named "Constant Contact Form Designer" into the sidebar.
  8. Configure the settings shown, then click the "Save" button at the bottom of the widget form.
  9. You will see the signup widget you created on your website!
  10. To edit the form, return the the Form Designer page (from Step 3) and click on the form tab with the name of the form you would like to edit. Edit the form, then click Update Form. The form will show as updated on your website.

What is the plugin license?

Good news, this plugin is free for everyone! The plugin is licensed under the GPL.

How do I test Akismet spam filtering?

  • Add a First Name field to the form you want to test
  • Log out of your site (Akismet takes into account if you're logged-in)
  • Submit your form using the First Name field set to viagra-test-123
  • That should always return false

Requires: 3.3 or higher
Compatible up to: 4.6.2
Last Updated: 4 months ago
Active Installs: 10,000+


2.2 out of 5 stars


0 of 10 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1 100,2,2 75,4,3
50,4,2 57,7,4 100,1,1 20,5,1 100,1,1 100,7,7
100,1,1 100,1,1 100,1,1
50,2,1 100,1,1
100,1,1 50,2,1
40,5,2 0,1,0
20,5,1 25,4,1 100,1,1 100,1,1 0,2,0 50,4,2 100,1,1 0,1,0
50,8,4 50,2,1
100,1,1 100,2,2 33,3,1 100,1,1
100,1,1 100,1,1 33,9,3
100,1,1 100,1,1
100,5,5 0,1,0 100,1,1
0,2,0 0,1,0 100,1,1