What You Will Build
By the end of this guide, you will have a working WordPress-as-a-Service platform where visitors can self-service sign up, pick a site template, choose a plan, and receive a fully provisioned WordPress site.
Tutorial Goals
| Component | What you will set up |
|---|---|
| Plans | 1 free plan (basic features, no payment required) + 1 paid plan (monthly via Polar) |
| Billing | Polar as primary payment provider |
| Templates | At least 1 site template customers can choose from |
| Frontend | Signup page, template browser, tenant dashboard |
| Flow | End-to-end: visitor → select template → pick plan → pay (if paid) → site created |
Architecture
┌─────────────────────────────────────────────────┐
│ YOUR MAIN SITE │
│ (yoursaas.com/wp-admin) │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────────┐ │
│ │ Plans │ │Templates │ │ Billing │ │
│ │Free / Pro│ │ Gallery │ │(Polar/WC/..) │ │
│ └──────────┘ └──────────┘ └──────────────┘ │
│ │
│ ┌──────────────────────────────────────────┐ │
│ │ PUBLIC PAGES │ │
│ │ /signup /templates /dashboard │ │
│ └──────────────────────────────────────────┘ │
└─────────────────────────────────────────────────┘
│
Provisioning Engine
│
┌────────────────┼────────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────────┐
│ Tenant A │ │ Tenant B │ │ Tenant C │
│ (free) │ │ (pro) │ │ (pro) │
│ a.you.com│ │ b.you.com│ │ custom.com │
└─────────┘ └─────────┘ └─────────────┘
Customer Signup Flow
Here is what your customers experience:
- Visit signup page - sees available plans and pricing
- Pick a template - browses the template gallery with tags/filters
- Choose a plan - free or paid
- Enter site details - subdomain slug, email
- Pay (if paid plan) - redirected to Polar checkout
- Site provisioned - customer receives their WordPress site URL
- Access dashboard - manage site, billing, custom domain, backups
What Each Plugin Does
GrabWP Tenancy (Base)
The foundation. Handles tenant routing (subdomain → correct database tables), table-prefix isolation, and basic tenant management. Every tenant shares the same MySQL database but has isolated tables.
GrabWP Tenancy Pro
Adds advanced isolation and management:
- Dedicated databases - each tenant gets its own MySQL database or SQLite file
- Content isolation - separate themes, plugins, uploads directories per tenant
- S3 storage - offload uploads to cloud storage
- Backup & restore - per-tenant backup and restore
- Tenant cloning - create templates by cloning existing tenants
GrabWP Tenancy WaaS
The self-service layer that turns your WordPress into a SaaS platform:
- Plans - define free and paid tiers with features and pricing
- Billing - Polar and WooCommerce integration for payments
- Templates - template gallery with tags, groups, and plan restrictions
- Signup flow - complete provisioning pipeline from signup to site delivery
- Tenant dashboard - customer-facing dashboard for site management
- Custom domains - let customers use their own domains
- Subscriptions - lifecycle management with grace periods
Next: Install Plugins