Work/Adrian Center for the Arts
ACAAdrian Center for the Artsclient · adriancenterforthearts.org

An inherited site, stabilized and extended.

A community arts center whose website needed a steady hand. We took over an existing Divi build, got it healthy, and added the custom pieces it was missing — reliable form capture and a live class catalog pulled straight from their registration platform.

What we did
Maintenance, rescue & custom dev
Type
Inherited WordPress site
Built on
WordPress · Divi
Engagement
Ongoing carelive site
adriancenterforthearts.org/classes
GridCalendar
All classesPotteryPaintingYouth
Wheel-Thrown Pottery
Tue · 6:00 PM · 6 wks
Register
Watercolor Basics
Wed · 10:00 AM · 4 wks
Register
Youth Theater Lab
Sat · 1:00 PM · 8 wks
Register
Intro to Glass
Thu · 6:30 PM · 5 wks
Register
// what we inherited

We didn't build this site. We made it work.

Adrian Center for the Arts came to us with a website already in place — a Divi build that had drifted out of good health and wasn't being well served by its previous upkeep. The goal wasn't a rebuild. It was to take ownership, stabilize what was there, and quietly add the functionality the center actually needed day to day. No drama, no teardown — just a site that does its job again.

// stabilize

First, get it healthy.

Before adding anything new, we brought the existing build back to a maintainable baseline — the unglamorous work that keeps a site reliable.

✉️

Email deliverability

Configured authenticated SMTP delivery so contact and registration emails actually reach inboxes instead of vanishing into spam.

🔎

SEO hygiene

Tightened on-page SEO and metadata handling so the center's pages are described correctly and indexed cleanly.

🖼️

Image optimization

Automated image compression so a gallery-heavy arts site stays fast without the team thinking about file sizes.

🧩

Editor stability

Settled the editing experience so staff can update pages confidently without fighting the tooling.

🛡️

Updates & upkeep

Ongoing plugin and core updates, monitoring, and cleanup — the routine care that prevents the next emergency.

🧹

General cleanup

Removed cruft and trimmed what the site didn't need, leaving a leaner, calmer foundation to build on.

// custom build · 01

Divi Submission Vault.

Divi's contact form emails a submission and then forgets it. Miss the email, lose the lead. So we gave every submission a permanent home.

Problem

The center's forms run on Divi's built-in contact module, which sends an email but stores nothing. A missed or filtered notification meant an inquiry was simply gone, with no record to fall back on.

Built

A custom plugin that hooks Divi's submit event and logs every submission to its own database table — viewable and searchable in the WordPress admin, exportable to CSV, with optional digest emails so staff get a regular roundup instead of relying on one-off notifications.

Result

Nothing falls through the cracks. Every inquiry is captured, reviewable, and exportable — independent of whether an email ever lands.

Divi contact form
visitor submits an inquiry
Submission Vault
captured to a dedicated DB table
Admin viewer + CSV
searchable record · one-click export
DB-backed captureadmin viewerCSV exportdigest emailsdeliverability BCC
// custom build · 02

A live class catalog, on their own site.

The center runs registration through CourseStorm. We built a lightweight custom integration so the live catalog shows up natively on their WordPress site — no copy-paste, no stale listings.

CourseStorm API v2 integration

A custom, lightweight connector to the center's CourseStorm account — the catalog stays in sync with what's actually open for registration.

Class grid shortcode

A [coursestorm_api] shortcode drops a paginated grid or list of current classes onto any page, styled to fit the site.

Calendar shortcode

A [coursestorm_calendar] shortcode presents the same live classes as a browsable month calendar for date-first visitors.

Cached for speed

API responses are cached so the catalog loads fast and stays light on the center's hosting, refreshing on a sensible interval.

WordPressDiviCourseStorm API v2Custom pluginsShortcode embedsResponse caching
// the partnership

Care, not just a contract.

Inherited
an existing build, now stable and maintained
Ongoing
day-to-day updates, monitoring & upkeep
Custom
plugins that fill the gaps off-the-shelf left

Inherited a site that needs a steady hand?

We take over neglected builds, get them healthy, and add the custom pieces they were always missing.