Green Powered by WordPress & NationBuilder

Recently, we had the pleasure of working with Matthew Green, the City Councillor for Ward 3 in our hometown of Hamilton, Ontario on his new website. We are huge fans of the work and the progress that he has made in this city. So needless to say– we were absolutely thrilled to be a part of this project.

We had a lot of goals with this project.

Those included creating a great user experience — not just for the website visitor — but also for the people behind the scenes creating content and connecting with constituents. We wanted to make it easy for people to share and discover information. We also wanted to make sure that the lines of communication between Matthew and his constituents were always open. These are the key ingredients for creating a platform for open government.

When it came to choosing the system for this site’s content management, the decision was easy — WordPress was the clear choice. There are a lot of benefits to building on WordPress. It’s open source, broadly adopted, and offers a first-class content creation and management experience. It also provided the tools Matthew and his team needed to publish all types of content; share it through social media channels; and ultimately, spread information through Ward 3 and the city at large.

Even though we decided to build on WordPress, we wanted to continue to allow Matthew and his team to use NationBuilder. The team was already making extensive use of the popular platform for managing contacts and communicating with constituents. We didn’t want to disrupt what was an effective process for them. Taking this into consideration, we felt that NationBuilder fell short as a content management system (CMS) but we saw that it shined as a customer relationship management system (CRM).

An agency of two minds.

Now we had an issue. We loved WordPress as a CMS, but we wanted to keep using NationBuilder as a CRM. We were, so to speak, an Agency of two minds.


It was decided then — let’s have the best of both worlds. We integrated them together.

This was made possible because NationBuilder provided an application programming interface (API). Without getting into too much detail, an API can be thought of as an interface between two or more websites or applications so that they can communicate with each other to exchange data and perform tasks, as demonstrated by the graphic below:

A diagram depicting data flow between WordPress and NationBuilder via an API

NationBuilder has an extensive API which enables developers to integrate the core features of the platform into other websites and applications. This served us well in building Matthew’s new website. We were able to allow his team to continue managing campaigns and relationships in NationBuilder, while we forged ahead building the website on WordPress to leverage that platform’s excellent authoring, collaboration, and themeing features.

A diagram showing how data is sent to and from the Matthew Green website

By seamlessly integrating WordPress and NationBuilder we were able to use the right tools for the job. To access the API, we created a custom WordPress plugin which could be setup to be authorized for use with a NationBuilder account. Once authorized, it would securely communicate with NationBuilder through the NationBuilder API, allowing us to push and pull data from the platform. Amongst other things, our plugin included a widget that could be placed anywhere on the site to prompt visitors to enter their contact information. That information would then be posted to NationBuilder and used to create a contact and add that contact to a list.

The power of this approach was that website administrators could drop a widget into a page to collect contact information from visitors and then funnel that information into a list on NationBuilder related to the content that the website visitors were consuming.

A diagram depicting communication between visitors, the Matthew Green website, and NationBuilder

As an example let’s say a website administrator placed a widget on a post about light rail transit. A visitor could then fill out their information in that widget and click submit. That information would then be automatically posted to NationBuilder and used to create a new contact and assign that contact to a list for light rail transit. A NationBuilder administrator could then continue to communicate with that visitor on the subject– without ever having to login to WordPress.

We couldn’t be more happy with the end result: because of integration this project was able to use the best tools for the job for both content management and relationship management and it was able to be done thanks to the power and flexibility of the WordPress plugin system and the NationBuilder API. We here at Wise & Hammer are looking forward to seeing even more new ways to continue pushing the envelope to provide great end-user experiences as more and more services release APIs.

Check out our case study of Matthew Green’s new website.