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.

Utilities · Free · by Stackswork

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.

Utilities · Paid · by Stackswork

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.

Content · Paid · by Stackswork

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.

Content · Paid · by Stackswork

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.

Utilities · Paid · by Stackswork

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.

Notifications · Free · by Total CMS · Documentation

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.

Utilities · Free · by Total CMS · Documentation

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.

Access Control · Free · by Total CMS · Documentation

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.

Content · Free · by Total CMS · Documentation

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.

Utilities · Free · by Total CMS · Documentation

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