Requirements and compatibility
Read this before installing. One requirement is unusual and decides whether the plugin does anything at all: the active theme.
Platform
| Requirement | Expected configuration | Why it matters |
|---|---|---|
| WordPress | 6.9 or later | Matches the supported platform for the current release |
| PHP | 8.2 to 8.4 | Required by the plugin and its bundled dependencies |
| WordPress mode | Single site or multisite | Settings, events and attendees are per site |
| Theme | The POM theme, or a child of it | The event runtime, templates and shortcodes only load on it |
| Administration | Administrator access | The settings screen requires the capability to manage options |
| POM Events subscription | Active, with the license saved on this site | Required for private updates |
The theme requirement, precisely
POM Events checks the active theme's template. If it is not pom, the event runtime does not load — no event content type, no templates, no shortcodes, no registration.
What does keep working on any theme:
- the Settings → POM Events screen;
- the License section;
- update detection and installation.
That split is deliberate: a site that temporarily switches theme does not lose its licensing or its ability to update, but it does lose event rendering until the POM theme is active again.
Practical consequence: never test POM Events on a non-POM theme and conclude that it is broken. Check the theme first.
POM Framework
POM Events bundles POM Framework through Composer and owns its own settings page. Its values are stored under the pom-events settings namespace, separately from the theme's own options.
If WordPress reports that POM Framework is unavailable on the settings screen, the installed package is incomplete — reinstall the official release ZIP rather than copying files.
WooCommerce, optional
WooCommerce is not required. When it is active, POM Events adds:
- an E-Commerce tab on the event, for associating products;
- a Get access button that replaces the registration button;
- automatic enrollment after an order is placed.
Without WooCommerce those elements simply do not appear, and events use the built-in registration form.
Multisite
Events, attendees and settings are scoped per site. Nothing is shared across a network.
For updates on multisite, POM Events must be network-active or active on the network's main site, and the network license must be configured from that main site. Each subsite's License section states this requirement.
The timezone
Event dates and times are entered and displayed in the site's timezone, configured under Settings → General. Set it correctly before creating events: changing it later changes how every existing event reads.
Permalinks
Events publish at their own URL and the plugin registers an archive. Use a permalink structure other than plain so event and taxonomy URLs are readable, and re-save the permalink settings once after activation if event pages return a not-found error.
Content compatibility
Two things are worth knowing before you plan content:
- Tags are shared with posts. The event tag taxonomy is the site's normal
post_tag, so tagging an event puts it in the same tag pool as blog posts. - There is no recurrence. Repeating events are separate event records. See A recurring format without recurring data.
Pre-install decision
Proceed when all of these are true:
- the POM theme (or a child of it) is active;
- an administrator can manage settings and the license;
- the site timezone is correct;
- you know whether the site needs attendee registration at all;
- you know whether access will be sold through WooCommerce;
- you have a page in mind where the event list or calendar will go.
Then follow Install and activate POM Events.