The Friend — EE2 to EE7 Migration & Subscription Platform screenshot
Case Study

The Friend — EE2 to EE7 Migration & Subscription Platform

Full rebuild of The Friend's digital platform — migrating from EE2 to EE7, with a bespoke paywall add-on restricting non-subscribers to a limited article quota, and a custom subscription verification add-on integrating with a third-party membership system.

Year
2026
Author
Geoff Cowan

The brief

The Friend is the UK's independent Quaker magazine, publishing continuously since 1843. Their digital platform had been running on an ageing ExpressionEngine 2 installation — functional but increasingly difficult to maintain, and lacking the subscription management tools the editorial team needed.

The brief had three clear objectives: migrate the platform to EE7, implement a paywall that limits non-subscribers to a set number of free articles, and integrate subscriber verification against their existing third-party membership system.

The migration

Moving from EE2 to EE7 is one of the more complex migration paths — spanning five major versions with significant architectural changes at each step. We faced the choice of updating or rebuilding, in this case due to many changing requirements, we went for a rebuild alone with a complete redesign with our partners.  Once the new system was in place, we migrated the huge amount of content from the old site to the new.

The paywall add-on

We built a bespoke EE7 add-on to manage article access. Non-subscribers are permitted to read a configurable number of articles before being prompted to subscribe. The add-on tracks article views against session and member data, handles the gating logic cleanly within EE's template layer, and is fully configurable from the control panel without requiring template edits.

Subscription verification

The Friend manages its subscriber base through a third-party membership platform. We built a custom add-on that verifies subscription status against that platform's API on login, caching the result to minimise external requests. The add-on handles the full range of subscription states — active, expired, cancelled — and updates member access permissions in EE accordingly.

The outcome

The rebuilt platform launched on schedule with no downtime and no content loss. The editorial team now has a maintainable, modern EE7 installation with subscription management tools that work seamlessly within their existing workflow. The paywall has been in production since launch without issue.

// Like what you see?

Let's talk about your ExpressionEngine project.

Whether you need a migration, a custom add-on, or a full build — we'd love to hear what you're working on.