Constant Contact Signup Form Widget

Get Premium Support for this plugin or visit the community support forum

This plugin has downloads

The Constant Contact Widget adds Constant Contact signup forms to your sidebar without touching code. Includes options for Title, Button Text, Tag Wrapper, Form ID Code, Intro Paragraph, and much more.

Shortcode newsletter form support

Embed a form in your website using shortcakes: [constantcontact id="3"] will embed form #3 in your page or post content. It’s that simple!

Widget options:

The widget has tons of configuration options:

  • title – Widget title
  • preface – Text shown inside the widget form
  • button – The text of the submit button
  • style – Choose from three different Constant Contact styles, or unstyled
  • safe_subscribe – Choose from three colors of the SafeSubscribe logo – Constant Contact only provides 1 by default!
  • email_image – Add some flair to your widget with an email icon: choose from 5 options
  • width – Customize the width of your widget
  • input_size – Customize the width of the email input field
  • and more!

Learn more on the Official Plugin Page.


If your using WordPress version 2.9 or above, consider using the Constant Contact for WordPress plugin. The Constant Contact for WordPress plugin has more features, but is currently lacking the styling options available with this plugin. We are working to bring you the best of both plugins.


Latest version: Download Constant Contact Signup Form Widget v2.0.3 [zip]


Follow the following steps to install this plugin.

In your sidebar:

  1. Download plugin to the /wp-content/plugins/ folder
  2. Upload the plugin to your web host
  3. Activate the plugin through the ‘Appearance > Plugins’ menu in WordPress
  4. Go to the Widgets page in WordPress (Appearance > Widgets)
  5. Drag Constant Contact Widget 2.0 into a sidebar.
  6. Paste the HTML Code from Constant Contact (Contacts > Join My Mailing List > Start Wizard to generate HTML code). View tutorial video.
  7. Save the widget, then configure the rest of the options.
  8. Save once more, and you’re all set!

On a page:
Configure the widget as you would in your sidebar (see above). Then, you can either:

  • use <?php do_shortcode('[constantcontact id="#"]'); ?> in your template code
  • or write [constantcontact id="#"] in your post’s or page’s content.


Q. How do I use the new `apply_filters()` functionality? (Added 1.7)
A. 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('cc_signup_form_widget', 'my_example_function');

Q. How do I create a Constant Contact form using this widget?
A. Go to ‘Appearance’ > ‘Widgets,’ click “Add” next to “Constant Contact,” click “Edit” to configure your form and follow the on-screen instruction.

Q. Do I need a Constant Contact account for this widget?
A. 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

Q. How do use this as a PHP function and not have it in the sidebar?
A. In the Widget options, fill out the Widget settings as you would normally. Set ‘Show the Widget’ to ‘No, Hide Widget’, which will save the widget settings, but will not display it. Then you can use the following PHP to show the widget: do_shortcode('[constantcontact id="#"]');.

Q. Can I call Constant Contact if this form does not work?
A. No, this form is not created by Constant Contact, so please do not call them with questions. Instead, “leave a message on the widget blog page”.

Q. What is the license for this plugin?

  • This plugin is released under a GPL license.



  • Fixed issue where upon form submission, users are taken to Constant Contact page that says “An unexpected error has occurred. Please try again.”
  • Fixed PHP notices being displayed if WP_DEBUG is turned on
  • Fixed issue where background color may have been overwritten when using the Basic Design preset.
  • Improved CSS output to only output once when wp_print_scripts is called multiple times
  • Changed CSS generation for Style 1 to allow for multiple widgets with different style configurations


  • Added backward compatibility from Version 1.7 – all previous settings will now be imported.


  • Fixed bug where widget would display the form before the widget had been properly configured
  • Fixed a bug where the “Give thanks” link would show up even if “Give thanks” option had not been checked. Sorry about that!


  • Converted the plugin to use the (not-so-new) Widgets API introduced in WordPress 2.8. If use an earlier version, do not upgrade!
  • Widget CSS is now shown in website head instead of inline
    • Filters were added to easily modify CSS: cc_widget_style, cc_widget_style_{widget #}
  • Widget layout completely re-written to be much easier to use.
  • All images used in the widget styles are now included in the plugin – this will reduce load time of each page
  • New settings:
    • Email icons – Add nice-looking email icons to your widget
    • Form target – Choose whether or not forms open in new window
  • This version has many large changes – please report any issues here – you may need to re-configure some settings if the form is not displaying as it used to.
  • Shortcode use has been updated – you must now use the widget ID (found under the widget’s Form Settings section) in the shortcode. Before, it was [constantcontact]; now it is [constantcontact id="#"], where # is your widget number.


  • Moved from .17 to 1.7
  • Added apply_filters('cc_signup_form_widget') code to allow for simple widget modification
  • Improved layout, wording, and grouping of widget configuration options
  • Improved readme.txt file

.161 & .162

  • Updated plugin to include GPL license information
  • Added function_exists check to fix reported issue


  • Added different SafeSubscribe(sm) image options for different background colors
  • Combined the SafeSubscribe image chooser with Display SafeSubscribe option
  • Improved s in widget
  • Improved Stylish email image display
  • Added a proper Changelog to readme.txt
  • Fixed widget installation “White Screen” error

.154 & .155

  • Added #go to submit button in all Styles to add more CSS customization
  • Added shortcode functionality


  • Fixed unexpected $end issue on some servers, by changing <? to <?php


  • Added custom title to Stylish design
  • Added custom email input label, and option to turn off label


  • Added option to change size of email input
  • Added option to hide the <fieldset> in the No Style form
  • Fixed Internet Explorer issue where adding widget would cause active widgets list to disappear.
  • Added options to change border and background color in the Basic Style form


  • Stylish form now has custom button text
  • Added custom width option for forms
  • Improved Stylish form email image layout

.144 & .145

  • Email input javascript text toggle now works properly
  • Added option to give widget author credit
  • Made Constant Contact informational links nofollow
  • Added option to rename or remove <legend> using the No Style form


  • Updated CSS for Stylish design to prevent background of email image from showing through


  • Fixed code for CSS-only and Stylish design


  • Fixed code for Stylish design if javascript was turned off


  • Added option to not show widget, but use with plugin-like functionality by calling widget_cc()
  • Added option to define custom default input text toggle
  • Added method to turn off input text toggle and remove the javascript
  • Fixed improper code


  • Fixed small coding error with closing input tag
  • Added wptexturize for widget title


  • Added option to show Constant Contact link
  • Added Basic, Bubble, and Stylish style options from Constant Contact’s default options (don’t blame ME!)

Leave a Reply