mwpc screenshot

Repurposing an Events Platform: From Marlborough WordPress to MetroWest Professional Connections


The Project

The Marlborough WordPress Meetup had been running on Meetup.com for years before I built a custom WordPress-based events platform to replace it. That platform launched in October 2025 and successfully proved that WordPress could handle the full complexity of event management, user authentication, RSVPs, and calendar integration.

However, the Marlborough group itself faced challenges unrelated to the technology: unstable venue availability and limited bandwidth to maintain consistent event scheduling. By December 2025, I made the decision to pause the meetup rather than continue without the capacity to organize regular, quality events.

But the codebase was solid. The technology worked. It just needed a better home.

Enter MetroWest Professional Connections (mwproconnect.com)—a networking group I helped to found in 2024 for professionals across the MetroWest Massachusetts region. This wasn’t a casual meetup group; it was a more formal chamber of commerce model with member tiers, board governance, and a focus on sustainable professional networking rather than sporadic local events. As president of MWPC, I needed a website that could match the organization’s professional stature.

The core functionality aligned perfectly: member authentication, event management with RSVPs, calendar subscriptions, and member directories. Rather than start from scratch, I decided to adapt the Marlborough WordPress platform into a production-ready plugin called ChamberPress—purpose-built for professional networking organizations.

The Challenges

  • Different membership models – The Marlborough platform had a simple binary: logged-in members vs. public visitors. MWPC required a sophisticated role system: Board, Members, Alumni, and Contacts—each with different permissions and access levels
  • Email communication at scale – A casual meetup could get by with informal RSVPs and calendar subscriptions. A professional organization needed bulk email capabilities with templating, token replacement, and queue management for event announcements
  • Administrative complexity – The original platform assumed a single organizer. MWPC needed role-based admin restrictions, bulk user management, and tools for board members to manage events and communications efficiently
  • Data portability – MWPC already had member data, event history, and organizational structure. The platform needed to accommodate existing content rather than require a fresh start
  • Production stability – Unlike a side-project meetup site, MWPC would be a primary business tool for professional networking. The plugin needed enterprise-level error handling, permission systems, and maintainability

The Process

The Architecture

Rather than adapt the theme-based Marlborough platform, I rebuilt the system as a standalone plugin. This architectural decision meant MWPC could use any WordPress theme while ChamberPress provided all the event and membership functionality through custom post types, user roles, and Gutenberg blocks.

Custom Post Types

  • Events – Expanded from the original with additional fields for presenters, conferencing links, and better timezone handling for ICS feeds
  • Email Templates – New post type for reusable email templates with token replacement (e.g., [[event_title]], [[event_date]])
  • Email Queue – Tracks sent emails for audit purposes and troubleshooting

User Roles

The simple logged-in/logged-out model evolved into four distinct roles:

  • Board – Full administrative access: manage events, send emails, access all members
  • Member – Standard access: RSVP to events, view member directory, manage own profile
  • Alumni – Limited access: view own profile, can soft-delete account, no event RSVPs
  • Contact – Prospective members: limited access similar to Alumni

Each role includes fine-grained capabilities managed through WordPress’s capability system, enabling precise control over admin menu access, event visibility, and feature availability.

Gutenberg Blocks

The original platform used template parts embedded directly in page templates. ChamberPress converts these into proper Gutenberg blocks:

  • Events Feed – Displays upcoming events with permission-aware visibility
  • Event Meta – Shows event details, RSVP interface, and attendee list
  • Subscribe Calendar – Generates ICS feeds for individual events or full calendar subscriptions
  • Users Feed – Member directory with role-based filtering
  • Welcome User – Personalized greeting block
  • Account – Login/logout/registration interface

This block-based approach gives MWPC flexibility to arrange components across multiple pages rather than forcing a single homepage layout.

The Data Migration

MWPC already had events and members when ChamberPress launched. The plugin needed to work alongside existing content:

  • Events continued using the same custom post type structure with enhanced meta fields
  • WordPress users were mapped to the new role system based on their organizational status
  • Email templates were created fresh, but could reference existing events for token replacement
  • RSVP data from the Marlborough platform wasn’t migrated—MWPC started with clean RSVP tracking

The Development

Permission System Overhaul

The most complex aspect was implementing role-based permissions throughout:

  • Admin menu restrictions – Alumni and Contact roles can only access Dashboard, Profile, and Logout. The admin bar is completely suppressed for these roles on both frontend and backend.
  • Event visibility – Board sees all events. Members see published future events. Alumni and Contact see limited event information with restricted RSVP access.
  • Media library isolation – Restricted roles can only see their own uploaded files, preventing access to organizational media.
  • Profile field restrictions – Board and Member roles can toggle “hide from directory” status. All four roles can soft-delete their own accounts, preserving historical data while removing public visibility.

Email System

The original platform had no email functionality beyond RSVP notifications. ChamberPress needed a full communication suite:

  • Email templates – Custom post type with ACF fields for subject and body content, supporting token replacement for personalization
  • Send Email page – Admin interface for composing and sending emails to member lists with template loading, BCC support, and test email functionality (AJAX-based to prevent page refresh)
  • Token replacement – Event-aware tokens like [[event_title]], [[event_date]], [[rsvp_link]] that get replaced with actual data when sending
  • Queue tracking – All sent emails logged to custom post type for audit trail

ICS Feed Improvements

The calendar subscription feature from Marlborough WordPress needed refinements:

  • HTML entity decoding – Titles and descriptions now properly decode & to & rather than displaying raw HTML entities
  • Timezone handling – Switched from UTC format to DTSTART;TZID=America/New_York format so subscribed calendars display correct local times
  • Calendar naming – Subscriptions now show “MWPC Events” instead of the raw webcal:// URL
  • Description cleanup – Removed page content from ICS descriptions, showing only conferencing links and event URLs to keep calendar entries concise

Block Editor Compatibility

The most frustrating bugs involved Gutenberg block registration. PHP-rendered blocks would show as “Unsupported” in the block editor if they used early return statements that output nothing in certain contexts.

The fix: always output something. Even if a block isn’t applicable on the current page (e.g., subscribe-calendar block on a non-event page), it renders a placeholder message so WordPress knows the block is functioning correctly.

Bulk Management Tools

MWPC needed administrative efficiency tools:

  • Bulk user creation – CSV import for adding multiple members at once with role assignment
  • Bulk event duplication – Create multiple instances of an event across different dates (useful for recurring monthly meetings)
  • Bulk user editing – Table interface for quickly updating user roles, visibility, and meta fields

The Finished Product

ChamberPress launched for MWPC in December 2025. The platform now handles:

  • Role-based membership system with four tiers and granular permissions
  • Full-featured event management with RSVP tracking, attendee lists, and avatar grids
  • Calendar integration via ICS feeds compatible with Google Calendar, Apple Calendar, and Outlook
  • Email communication suite with templates, token replacement, and queue management
  • Member directory with active/inactive status, profile customization, and soft-delete capability
  • Gutenberg block library for flexible page layouts across the site
  • Admin tools for bulk operations, event duplication, and user management

The plugin is production-ready and actively maintained for MWPC’s professional networking needs. While Marlborough WordPress is now on pause, ChamberPress powers an ongoing organization with sustainable event scheduling and engaged membership. A quick before and after comparing the two platforms —

The Future

ChamberPress could be generalized for other professional networking organizations, chambers of commerce, or membership-based WordPress sites. The architecture is sound, the permission system is flexible, and the email functionality is robust enough for event-driven communication at scale.

For now, it’s purpose-built for MWPC—but the foundation is there if another organization needs similar functionality.

The Marlborough WordPress website may have been retired, but MWPC’s ChamberPress showcases the evolution of that codebase into something more sophisticated.