WordPress Plugins
Custom Event Booking & Management Plugin
Project Overview
James L Photography needed event scheduling, customer booking, checkout, and administration workflows that existing plugins could not accommodate together, so a custom solution was developed within its WordPress website.




Requirements and Solution
The plugin was designed to support:
- Dynamic event listings
- Automatically display upcoming photography events using published WordPress posts.
- Flexible scheduling
- Support group photography events with shared ticket availability and family mini-sessions with individually reserved time slots.
- Customer bookings
- Collect contact information, ticket quantities, and appointment selections.
- Payment processing
- Integrate with Square for checkout, deposits, and payments.
- Event administration
- Manage events, attendees, booking availability, cancellations, and refunds.
- Automated communication
- Send booking confirmations, calendar invitations, event reminders, and remaining-balance notifications.
- Booking records
- Synchronize reservation activity with Google Sheets for administrative tracking.
Customer Booking Process
Upcoming photography sessions are automatically displayed on the website's events page when new event posts are published.
Customers select an event and proceed to a booking form, where they provide their contact information and choose the number of tickets or an available appointment time.
The booking process connects to Square for payment. Once payment is confirmed, the system sends the customer a booking confirmation and calendar invitation, and records the reservation for administration.
Event Administration and Automation
The plugin includes an administration interface for reviewing reservations, managing attendees, monitoring ticket availability, and handling cancellations and refunds.
To prevent overlapping reservations, the system temporarily holds selected tickets or appointment slots during checkout and releases unpaid reservations when the hold expires.
Additional functions include reminder emails three days before an event and support for deposit-based bookings with remaining-balance notifications.
Booking activity is also recorded in Google Sheets, providing an additional administrative record without requiring manual entry.

Project Outcome
The custom WordPress plugin brings the event workflow into one coordinated system.
- Centralized event publishing and booking management
- Support for different photography session types
- Integrated scheduling and payment workflows
- Reduced manual coordination and administration