This widget adds a Constant Contact signup form to your blog’s sidebar without touching code.
New: add a form in your page or post by writing [ConstantContact] in the content.
To install, download the file and upload to your WordPress installation’s Plugins directory. You know the drill…and if not, leave a comment below.
Give me some feedback or links if you like this widget. Thanks!
Download the Widget:
Version History:
Refer to the Changelog on WordPress.org.
Future plans
- Include nice templates, not just Constant Contact templates
- Integrate form with the Constant Contact API
- Make form fully valid XHTML (requires update from Constant Contact first)
Download Stats from WordPress.org
Related posts:
- Constant Contact Forms Generator – Create a Form for any Website or Blogger.com Blog
- Hidden Fields Module for Contact Form 7 (2.x) WordPress Plugin
- Constant Contact’s Business Partner Program Is Better Than It Seems
- VerticalResponse Widget for WordPress
- Receive Email Updates from Constant Contact Surveys: Feature Request

Katz Web Services is a
{ 7 trackbacks }
{ 97 comments… read them below or add one }
← Previous Comments
Zack,
Thanks for the plugin! I think it’s what I’m looking for. However, I’ve not been able to use it yet.
I’m using the “i-feel-dirty” template, and WP 2.7.1.
When I activate the plugin, nothing shows up on my widget page.
My widget pages says:
The theme you are currently using isn’t widget-aware, meaning that it has no sidebars that you are able to change. For information on making your theme widget-aware, please follow these instructions.
When clicked the “follow these instructions” link, there were no instructions to follow.
Any feedback would be greatly appreciated.
Thanks,
Jeff
http://www.stonecoldmagic.com/blog
Hi Zack…
Another CSS problem here! I have the same problem with someone above about wanting to have the button match the rest of my site.
I have selected the “no style” option, and have added the css code into my style.css file in my theme folder in wordpress, but it is not showing up.
I’m not really sure what I’m doing wrong. Any help would be great,
Thanks!!
Sophie
http://www.sophieshepherd.com
and the site in my question is:
http://memyselfandny.com/
I’m hoping I will have it figured out by the time you click that!
Zack,
Looks like that’s working. Thanks a bajillion!
SS
Got a mod I need for the CC Widget.
How much to have the CC widget drop the email address into my wordpress database. And then send the post to CC. Or the other way around?
Thanks for the help.
Is there a way to add the widget to a wordpress blog hosted on wordpress’s site?
hi zach,
i’m trying to get the widget to work on my wordpress blog. i have it installed. it shows up in the sidebar nicely. but, when i go to constant contact to add my ‘number’. it will not let me edit the code in the html wizard. am i doing something wrong?
thanks for your help.
becky
Thanks for the widget. I have a feature request — we use Google Analytics to track traffic. I believe that you could add the following to the FORM field to allow for tracking the outgoing clicks to the subscription form.
onsubmit=”javascript: pageTracker._trackPageview(‘/outgoing/constantcontact-signup’);”
I’d like to see that feature added.
For more information, here’s the article I read about it:
http://www.flyteblog.com/flyte/2008/02/track-email-new.html
Great idea! I’ll add that functionality in the next release. Thanks, Sara
Can I have multiple instances of this widget? I want ot display it on several pages with differing content and allow visitors to sign up to different lists in my constant contact account.
I have serveral different newsletters with Contact Contact. When I use your widget, will the unique ID number include the directions of which newsletter file to dump the email address in?
Hi Tom,
This widget does not do that, because in order to enable that functionality, we would need to have users enter their Constant Contact username & password, which I don’t currently feel comfortable with. You can configure what mailing lists you wish to show the users when they sign up (if you want them to be able to choose which lists they subscribe to), but that’s it. If you’re logged in, you can do that on the Edit Your Join My Mailing List Form page.
Zack,
Thanks for the plug-in. I am new at this and just using the basic wordpress account. The instructions are not completely clear to me.
1. Download plugin to the /wp-content/plugins/ folder
(done)
2. Upload the plugin to your web host
(am just using the blog)
3. Activate the plugin through the ‘Appearance > Widgets’ menu in WordPress (not sure how to accomplish this even if 2. worked)
Thanks for any assistance.
Walter
Zack:
Very nice plug-in. What a huge time-saver!
I wanted to let you know of a minor mod I made to the code to enable a user to EASILY drop the form into the body of a page. I inserted the following lines into the constant_contact.php file near the top of the code:
************
// Enable the ability for the contact form to be loaded from pages
add_filter(‘the_content’,'constant_contact_insert’);
// Function to deal with loading the contact form into pages
function constant_contact_insert($content)
{
if (stripos($content,’{CONSTANT_CONTACT}’)!==false) {
$cc = widget_cc();
$content = str_replace(“{CONSTANT_CONTACT}”,$cc,$content);
}
return $content;
}
***************
This allows anyone to drop the form onto their page by simply entering {CONSTANT_CONTACT} into their page through the WordPress admin page editor.
Maybe this is helpful to others as well.
Thanks again!
Hi Cale,
The Constant Contact Widget already has shortcode support built into it by typing
[constantcontact]or[ConstantContact]into the content of the page. This uses WordPress’ shortcode system rather than basic PHP functions.Glad you like the widget!
Zack,
Thanks for the efforts!! I am new to Constant Contact and have the Wordpress plugin to export the current emails from my site. I am hoping to avoid duplicating email entries….so when they sign up to be a “member” on our site I want to add the constant contact code (i think) and give them a default check box “yes”. follow me? hope so!
Zack,
Thanks for a great and easy to use widget! I’m the webmaster for my daughter’s school’s PTA and they use Constant Contact. So, this was exactly what I needed. However, I do have one bug to report. One of our moms reports that when she tried to use the widget some strange things happen. She can’t place her cursor in the entry field. And she says that her cursor seems like a select cursor. And then it jumps to the top of the page. She runs a Mac with Safari (I assume). Do you have any suggestions? Most of our parents have already signed up for Constant Contact, but next year, if more people have the problem, I’m going to be desperate. Thanks again. Lene
Great Tool. Works perfectly.
In addition to email address, I would like to capture First Name and Last Name. I see that option in Constant Contact website. Can I update your widget’s PHP to capture this additional info? And what is the code to be inserted?
Hi Leslie,
That option would require a different type of form (switching to the API, if you want to know)…which is in the works, but not yet here. If someone enters in their email, they will be presented with required fields that you can set using the “Customize Your Join My Mailing List Form” option in the Contact > Join My Mailing List section of the CC site.
Hi Zack,
I’ve just found this plugin and it seems that it’s to easy and fast to setup. But, I’ve found minor problem. I can’t seem able to work when I tried to add email in the front end.
Is this related to constantcontact account because for now I’m using a free trial(60 days) account.
Where do we get the “Unique Form ID Code” using trial account.?
Any help would be greatly appreciated.
Hi Eugene,
For a video on where to find the Unique Form ID, go here: Constant Contact Form Generator
Hi Zach. The instructions say to sign in to constant contact and go to Contacts > Site Visitor Signup. I see Contacts, but when I click on it, I do not see anything that says Site Visitor Signup. I admit, I’m not a Constant Contact user, so I’m lost. I’m wondering whether CC changed their pages and moved it somewhere else, but I can’t find it anywhere.
Hi Kayle, the link is now located at Contacts > Join My Mailing List > Start Wizard to Generate HTML code
Zack,
I don’t know if you saw my issue from back on October 30th. Do you have any suggestions?
Thanks again.
Lene
Hey Zack, great plugin, thanks!
I’m having a problem however moving the widget code to my header.php. I made the widget invisible in the widget prefs and put the code
<?php echo widget_cc(); ?>
in my header, and where the widget would normally go in the sidebar I am getting the error:
Fatal error: Cannot redeclare kwd_cc_footercomment() (previously declared in /home/xxx/xxx.com/wp-content/plugins/constant-contact-signup-form-widget/constant_contact.php:385) in/home/xxx/xxx.com/wp-content/plugins/constant-contact-signup-form-widget/constant_contact.phpon line 384
Oops! Hit reply too soon! Anyway, any help would be appreciated. I need the contact form to be persistent on every page.
Thanks!
Alison
I’m not a website expert I just seem to have a talent in dabling in code, so when it came to trying to download your widget to upload in plugins on wordpress, I seem to be running into the same problem. When I click to download it says underneath that it is going to be a “.zip” file, which it needs to be to be uploaded into pluggins, yet every time I download it it shows up as a file in 3 different forms. One it says constant_contact.php, the second says readme.txt, and the third says screenshot-1.jpg. Neither can be uploaded to wordpress. Like I said I just have a talent in dabling in code so I might be missing a step or like you said I just may not know the drill… If you could help that would be amazing!
Hello Alisha,
What’s happening is that the .zip file is being “unzipped” by your computer automatically (I assume you’re on a Mac). You will find the original .zip file in the Trash. Move it out of the Trash, and everything else should work as expected. Hope this helps
I’m getting the following when trying to use the shortcode:
Fatal error: Cannot redeclare kwd_cc_footercomment() (previously declared in …/wp-content/plugins/constant-contact-signup-form-widget/constant_contact.php:385) in …/wp-content/plugins/constant-contact-signup-form-widget/constant_contact.php on line 384
Any suggestions on what I’ve done wrong?
Hi Zack,
I have the no style option and I am unable to setup the email_label color to white as well as legend(Sign up), could you be so kind to let me know how to do it?
Thanks
LP
Thanks for sharing the plugin. Just activated it, but getting an error. (WP 2.9.1) The error appears immediately after activation; I haven’t changed or applied any settings, since the error also stops wp-admin from loading.
Doesn’t look like a conflict with another plugin. Have you run into this issue? I’ll try it in a fresh install of wp, see if the error still occurs. Thanks!
Hi Steve,
Thanks for reporting the issue. I have just released Version .162 that should fix this issue. Check for it on your Plugins page.
Don’t worry about upgrading your WP installation; it’s only the plugin that is causing that error.
I have your widget all installed but I don’t see it. What did i do wrong? MelisaLynn.net/blog
Once you download and activate the widget on the Plugins page, you go to Appearance > Widgets and click ‘Add’ to add the widget to your sidebar.
Click Save Changes and you should be all set. Does that help?
@Oscar – I’ve sent you an email…please let me know how your widget was configured. I’m not able to duplicate the error.
Also, what other widgets and plugins are you running?
@ Liz – it’s going to be a bit technical. Here’s how you would do it:
Configure the plugin as you would normally, but then for "Show the Widget:", choose "No, Hide Widget". Then, in your sidebar.php file, paste this where you want the widget to show:
<?php// Let's pretend the page ID that you want to show it on is page 8. Change the number to match the page ID of the page you want it to show on.
// is_front_page() and is_home() checks if it's your home page.
if(is_front_page() || is_home() || is_page(8)) {
// widget_cc() calls the widget code, which should be configured as you set it up in the administration
widget_cc();
}; // Close the if
?>
@frank – Use the following code:
<?php echo widget_cc(); ?>@kanea31 – What plugins are you using? There seems to be a conflict with a plugin that is causing a few people problems.
BRIAN! Thanks, I’ll check out the IE angle…I hadn’t considered it would be a browser issue!
I’ll also add the functionality to change the input size. Depending on your form style, the input code will be on different lines. Do a search for
name="ea"; that’s the input you’ll want to change.Thank you everyone for helping me solve the issue with the form. It turned out to be an Internet Explorer issue, as @Brian helped figure out.
Version .15 fixes these problems, and adds custom email input widths, and more!
Thanks, Jenn. I’m updating the how-to now.
If you’re logged in to Constant Contact, click on this link: Go to the Signup Form Wizard.
I just added the functionality in .151. It should be available for download in about 20 minutes at the plugin page (or with automatic upgrade). Keep the ideas coming!
I also will eventually clean up the widget’s admin interface.
Thanks, Oscar! I fixed this issue in .153, thank you for your help. I’ve also updated my other widgets and plugins for this issue.
Depends on how your widgetized sidebar is set up, and which form style you use. You can always choose the “No Style” option, in which case, the button style is
[whatever class the form containing div or li is] button.submit. Write back with more info, please!@docuguy – You’ll want to use the “No Style” option, which is stripped of CSS styles.
If your template has a widgetized sidebar, you can add the form to your template in the Appearance > Widgets administration page.
If your template does not have widgets enabled, then you can use some PHP code to show the widget in your template. Wherever you want the form to show up, simply add to the code
<?php widget_cc(); ?>to your template. If that breaks things, usewidget_cc();instead.Hi Sophie,
You will want to create a CSS class
.widget_cc button#go. Refer to this article on how to style a button element.Hope this helps. Let me know.
← Previous Comments