Extensions
Add what you need. Nothing you don’t.
Extensions bolt new behaviour onto Total CMS — Twig functions, CLI commands, routes, admin screens, event listeners — each one sandboxed behind permissions you control. Many ship in the download and only need enabling; others come from independent developers and are installed separately. The permission model is the same either way.
Quick Rules
Manage your website’s main .htaccess file directly in Total CMS, whether you’re setting up Pretty URLs, adding redirects, or adjusting website rules.
stackswork/quick-rules
View extension →
Statser
Page and event analytics that run inside your own install, with no tracking cookies and no visitor data sent to an analytics service. Covers referrers, downloads, form submissions and error pages, with shareable dashboards and period comparison.
stackswork/statser
View extension →
Suki Gallery Pro
Share galleries with clients for selection and comment without a separate proofing platform. Password-protected links, favourites, per-image comments, ZIP download, and an email notification when the client finishes.
stackswork/suki-gallery
View extension →
Toolbar Wizard Pro
Configure Styled Text editor toolbars from the admin instead of hand-editing configuration. Choose which controls appear, adjust how they behave, and generate the configuration from the result.
stackswork/toolbar-wizard
View extension →
TotalRecall
Restore points for tcms-data with deduplication and integrity verification. Restore individual files or folders, export a backup as a ZIP, and schedule automatic backups on Pro.
stackswork/totalrecall
View extension →
Pushover Pro
Send push notifications through Pushover when a form is submitted. Supports Twig templates in messages, image attachments, priority levels and delivery groups.
totalcms/pushover
Ships with Total CMS
Scheduled
Time-window gating. Renders a page only between a configured start and end time. For holiday campaigns, embargoed announcements and time-limited sales.
totalcms/scheduled
Ships with Total CMS
Protect
Gate a page behind a numeric passcode. Visitors enter a code to unlock and a cookie remembers them for 7 days. For client previews and soft launches.
totalcms/protect
Ships with Total CMS
A/B Split
Render an alternate template at the same URL for a percentage of visitors. Test layout, copy or CTA variations without changing the page URL.
totalcms/ab-split
Ships with Total CMS
Maintenance
Per-page 503 maintenance mode. Take individual pages offline with a custom message while the rest of the site stays up. Admins bypass automatically.
totalcms/maintenance
Ships with Total CMS
How They Work
Permissions you actually control.
An extension declares nothing about its own privileges. Total CMS detects what it really registered — routes, Twig functions, CLI commands, event listeners — and turns each one into a toggle you can switch off without uninstalling.
Capabilities, not promises
Permissions come from what the code actually did at registration, not from what its manifest claims. An extension cannot grant itself reach it never asked for.
A broken one can’t take the site down
Every extension boots inside its own try/catch. A failure is logged, recorded, and the extension is skipped — the rest of your site carries on serving.
No silent overrides
Extensions cannot shadow core Twig functions or built-in CLI commands, and collisions between two extensions are reported rather than resolved behind your back.
Build Your Own
The extension API is the same one we use.
Every extension above is built on the public extension API — there is no private back door. The starter repo demonstrates every extension point, and the CLI manages them from the terminal.
Start from the template
The extension starter is a working extension that exercises every extension point, ready to clone and rename.
Read the reference
The extension points reference covers routes, Twig, CLI, admin nav, dashboard widgets, field types, event listeners, and assets.
Manage from the CLI
Use tcms extension:list, enable, disable and remove to script installs and keep environments in step.
Get Started
Extend it, or just use what ships.
Every extension above runs behind the same permission model, whether it ships with Total CMS or comes from an independent developer. The free 45-day trial includes every Pro feature, so you can install, toggle capabilities, and build one of your own before spending anything.
Start Your Free 45-Day Trial