Variable themes and advanced themes
A theme customizes colors, typography and, depending on the level, the logo and certain rendering zones. Themes built into the product are stored in src/themes_builtin/, while imported custom themes land in data/themes/.
| Type | Contents | Use case |
|---|---|---|
| Variables | JSON theme based on style variables. | The simplest and safest way to change colors, typography and visual identity. |
| Advanced | Zip package that may contain theme.json, style.css, slots/, parts/, pages/ and PHP. | For deep customization, including replacement of certain rendered sections. |
Available installation methods
- Upload a variables-only JSON theme.
- Upload an advanced package as a
.zipfile. - Install from a URL or a GitHub repository converted to an archive.
- Install from the built-in store.
- Delete a non-builtin theme.
.zip format requires the PHP zip extension to be active on the server. If the extension is missing, only variables-only JSON themes can be imported.Store and extended catalogue
The store showcases themes considered trustworthy and ready to install quickly. Its catalogue can be extended locally via data/theme_store_extra.json using the same format.
Theme requests and moderation
On a shared instance, users can submit themes without having direct installation rights.
- Submission by upload or URL.
- Request queue for administrators.
- Archive download and review before approval.
- Approval, rejection, notes and status tracking from the user side in My Requests.
What must be treated as executable code
Advanced themes can contain PHP. They must therefore be evaluated as application code running on your server, not as a simple cosmetic resource.