PHPackages                             selay/silverstripe-constantcontact - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. selay/silverstripe-constantcontact

ActiveSilverstripe-module

selay/silverstripe-constantcontact
==================================

A simple ajax-based Constant Contact signup widget/module for Silverstripe -&gt; fully customizable in CMS Settings.

0212[1 issues](https://github.com/selay/silverstripe-constantcontact/issues)[3 PRs](https://github.com/selay/silverstripe-constantcontact/pulls)PHP

Since Jan 15Pushed 10y ago1 watchersCompare

[ Source](https://github.com/selay/silverstripe-constantcontact)[ Packagist](https://packagist.org/packages/selay/silverstripe-constantcontact)[ RSS](/packages/selay-silverstripe-constantcontact/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Constant Contact Module/Widget for Silverstripe
===============================================

[](#constant-contact-modulewidget-for-silverstripe)

A simple ajax-based Constant Contact signup widget/module for Silverstripe -&gt; fully customizable in CMS Settings.

Requirements
------------

[](#requirements)

- SilverStripe 3.1.0 or + (will work with 3.0 if you change one word: private to public $db in SS\_ConstantContact.php)
- PHP PHP 5.3+ with cURL extension for API
- [Silverstripe Multivaluefield](https://github.com/silverstripe-australia/silverstripe-multivaluefield).

Features
--------

[](#features)

- Easy to setup under CMS settings by setting error/success messages/API details and input field classes
- Uses Constant Contact PHP SDK for v2 API to add/update contact lists. Full SDK is provided for your own extension.
- No need to configure at the config file level. Just configure in CMS.
- Supports contact submission to single and multile lists. Options allow setting the submission to a single, selected, or all lists. All available lists are pulled via API, and shown in CMS. If you select only one list, the lists checkbox will not be shown in the front-end. If more than one, they will be displayed as checkboxes. If left empty, all available lists will be listed as checkboxes so that customers can choose which list they want to sign up.
- Uses ajax to submit and return the error/success messages which can be customized in CMS.
- Provides template to customize with javascript and css files in the project folder

See `composer.json` for exact set of dependencies.

Installation
------------

[](#installation)

- Download the module
- Extract the downloaded archive into your site root so that the destination folder is called contactcontact, opening the extracted folder should contain \_config.php in the root along with other files/folders
- Run dev/build?flush=all to rebuild the database
- Go to /admin/settings and click Constant Contact Tab to set up API details and customization. You can also set input class names and and submit button text here.
- Use &lt;% include SS\_ConstantContactForm %&gt; anywhere in your site template to include the widget. Run /?flush=all to let it find the template location.
- Edit the template constantcontact/templates/SS\_ConstantContactForm.ss to adapt to your design. CSS and javascript files can be edited if needed for customization.
- Enjoy

If you prefer you may also install using composer:

```
composer require /selay/silverstripe-constantcontact

```

Usage
-----

[](#usage)

- Please see Installation info above.
- Front end: [![alt tag](https://github.com/selay/silverstripe-constantcontact/raw/master/screenshots/front-end.png)](https://github.com/selay/silverstripe-constantcontact/blob/master/screenshots/front-end.png)[![alt tag](https://github.com/selay/silverstripe-constantcontact/raw/master/screenshots/front-end-progress.png)](https://github.com/selay/silverstripe-constantcontact/blob/master/screenshots/front-end-progress.png)[![alt tag](https://github.com/selay/silverstripe-constantcontact/raw/master/screenshots/front-end-done.png)](https://github.com/selay/silverstripe-constantcontact/blob/master/screenshots/front-end-done.png)
- Back end: [![alt tag](https://github.com/selay/silverstripe-constantcontact/raw/master/screenshots/back-end.png)](https://github.com/selay/silverstripe-constantcontact/blob/master/screenshots/back-end.png)In case of any problem, let me know and I will try to help you at my earliest convenience :)

Reporting an issue
------------------

[](#reporting-an-issue)

Please consider these obvious stuff faciliate the issue resolution.

- Ensure you specify what version of SilverStripe you are using i.e. 3.0.5, 3.1-master etc.
- Include any JavaScript or PHP errors you receive.
- Include your own code if you have modified.

### Translations

[](#translations)

It is not language dependent, and all texts can be custmized under Settings.

### Donation

[](#donation)

This module is available free of charge. I am constantly looking for ways to make more free stuff for you.
if you have ended up here searching for free stuff, you know and appreciate the value of time and energy, right? You can contriute a small amount you afford to buy me a coffee as encouragement and appreciation if you like and only if you afford it.

[!\[alt tag\](https://www.paypalobjects.com/en\_AU/i/btn/btn\_donateCC\_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=9DYDUD9TBH8PN)Enjoy this module and contact me if you need any help. I will do my best to get back to you within 12-14 hours.

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/74bf2d5fdc8db9f8224c46b46cfda918ae8790e1b9a7d0a0f0a833c894e570ba?d=identicon)[selay](/maintainers/selay)

---

Top Contributors

[![muskie9](https://avatars.githubusercontent.com/u/870751?v=4)](https://github.com/muskie9 "muskie9 (1 commits)")

### Embed Badge

![Health badge](/badges/selay-silverstripe-constantcontact/health.svg)

```
[![Health](https://phpackages.com/badges/selay-silverstripe-constantcontact/health.svg)](https://phpackages.com/packages/selay-silverstripe-constantcontact)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
