Customizing Templates
Benecaster ships two built-in templates — Default Light and Default Dark — and supports installing custom templates delivered by Benecaster’s design service or built independently. Templates control the visual appearance of episode pages, the episode archive, and subscriber-facing account pages.
Default Light is active from the moment you install the plugin. There is no state in which a show has no template at all, so switching templates is always a change from one to another rather than a first choice.
A template is not a WordPress theme, and the two work together rather than in competition. Your site’s WordPress theme still supplies the page’s header, footer, and overall site chrome. A Benecaster template only controls what renders inside that: the episode page, the episode archive, and the subscriber-facing account pages. Switching templates never changes your site’s WordPress theme, and switching your WordPress theme never changes your active Benecaster template.
The Templates Tab
Go to Benecaster → Shows → [Your Show] → Templates. The tab sits in each show’s settings, but the active template applies to your whole site — activating one here changes it for every show.
The Templates tab shows:
- Installed templates — all templates currently available, including the two built-in defaults and any you’ve installed
- Active template — which template your site is using (highlighted with an Active badge)
- Marketplace link — browse additional templates from Benecaster’s design service
Activating a Template
Click Activate on any installed template to switch to it immediately. The change takes effect on the next page load — no cache clearing required.
The two built-in templates (Default Light and Default Dark) are always present and cannot be removed.
Installing a Template from a ZIP File
If you’ve purchased a custom template or received a ZIP file from Benecaster’s design service:
- Go to Benecaster → Shows → [Your Show] → Templates
- Click Upload template
- Select the
.zipfile - Benecaster validates the ZIP, extracts the template, and makes it available in the installed templates list
- Click Activate to switch to the new template
Template ZIPs must follow Benecaster’s template package format — a benecaster-template.json manifest is required at the root of the ZIP. Templates from the Marketplace are always in the correct format. To build your own, see Building Your Own Template.
Building Your Own Template
You can package a template yourself and install it the same way as one from the design service. A template is a ZIP file with this layout:
studio-dark/
benecaster-template.json
screenshot.png
templates/ template parts, mirroring the plugin's templates/ directory
assets/
css/
js/
images/
The top-level folder is optional; the manifest can also sit at the root of the ZIP.
The manifest is a JSON file named benecaster-template.json:
{
"name": "Studio Dark",
"slug": "studio-dark",
"version": "1.0.0",
"requires": "1.0.0",
"author": "Your Name",
"description": "A dark, professional template.",
"screenshot": "screenshot.png"
}
name, slug, version and requires are required. requires is the lowest Benecaster version the template works with, and the upload is refused on an older install. screenshot defaults to screenshot.png.
What Benecaster checks on upload:
- The ZIP is 50 MB or smaller.
- The manifest is present and is valid JSON with all four required fields.
- The slug uses only lowercase letters, numbers and hyphens.
- The screenshot file named in the manifest is in the ZIP.
- There are no
.phpfiles insideassets/. PHP belongs intemplates/.
An upload that fails any check is refused with a message saying which one. The installed template lands in the uploads folder and appears in the Templates tab, where you activate it. Installing does not activate it.
For the template parts you can include and the variables each receives, see Template Overrides.
Removing a Template
Click the Remove button on any installed template you no longer need. Built-in templates (Default Light and Default Dark) cannot be removed.
If you remove the currently active template, Benecaster falls back to Default Light automatically.
Theme Overrides (Developer Option)
Developers can override individual template parts by copying them into their theme. This lets you change specific parts of a template — for example, just the episode title layout — without replacing the entire template.
Override path: wp-content/themes/[your-child-theme]/benecaster/[template-part-path].php
Use a child theme — placing overrides directly in a parent theme means they’ll be wiped out on the next theme update.
An override keeps the markup it was copied with, so something added to the built-in template part does not appear in your copy until you refresh it. For example, the account page’s Promote grace banner ends with a Re-enter payment details link, rendered from $sub['promote_signup_url'] ('' when no signup page resolves, in which case no link shows). A copy of account/subscription.php made before that link existed shows no link.
See the Template Overrides developer reference for the full file list, available variables, and override examples.
REST Endpoints
For programmatic template management (headless setups or custom admin tools):
| Endpoint | Purpose |
|---|---|
GET /benecaster/v1/templates |
List installed templates, active template slug, and built-in flags |
POST /benecaster/v1/templates/upload |
Upload a template ZIP (multipart/form-data) |
POST /benecaster/v1/templates/{slug}/activate |
Activate an installed template |
DELETE /benecaster/v1/templates/{slug} |
Remove an installed template (built_in: true templates return 403) |
All endpoints require manage_options capability and a valid WP REST nonce.
See Also
Need this built rather than just documented? See our services →