- HTTP caching and reverse proxies HTTP-level caching in Exponential for developers who know Symfony's HttpCache, Varnish setups, Laravel response caching or Django's cache middleware - page headers for anonymous visitors from settings, the role-aware…
- Icons in a design Icons for public designs and admin pages: inline SVG files from the design, the Bootstrap Icons set shipped in share/icons, admin4's .a4-bi-* mask classes and IconList, class and file type icon themes, and accessible…
- Layout types, zones and blocks The twelve layout types and their zones, the 46 block types grouped by purpose, view types, block parameters, containers, and collections with offset, limit and pinning - a reference for planning layouts.
- Mapping content classes to external data Turning records of another system into content objects - designing the class, choosing datatypes, the fromString() text formats of the common datatypes, images and files from a DAM, relations, languages, locations, and…
- Monitoring and feedback For accessibility coordinators - how to keep a live site accessible with a monthly content spot check, a feedback channel built from Exponential's own tools, a response routine, and the records a monitoring body or…
- NIST Cybersecurity Framework and an Exponential site For public bodies that organize security with the NIST Cybersecurity Framework 2.0 - a general framing of where Exponential's features and the operator's practices fit under the six functions Govern, Identify, Protect…
- Role and policy operators Showing or hiding parts of a design by role or permission: the has_role and has_policy family of operators, the fetch alternatives user/has_access_to and user/can_open, and why hiding a link is never the same as…
- Server and virtual machine images How to bundle Exponential in a cloud server or virtual machine image - the operating systems the project lists, what to install at build time, what to leave for first boot, the services an image must start (web server…
- Stop all optional mail to an address Step by step - honor a "stop writing to me" request in Exponential with a suppression list entry (reason legal), which blocks every optional mail and confirmation to that address while storing only a hash, and check it.
- The 62 language limit An Exponential installation holds at most 62 content languages on 64-bit PHP (30 on 32-bit PHP). Why, what counts and what does not, how to free a place, and what it means for public bodies with many languages or many…
- Transferring the repository and the Packagist package Move a theme's GitHub repository and Packagist package to a new owner without breaking installs - GitHub's transfer and redirect, the package name question, Packagist maintainers and the update hook.
- Update opening hours or contact details For editors - change opening hours, a holiday closure or a phone number once in the contact point or office object, so every service page that relates it shows the change, and find pages that still type the old details.
- Versions, translations and related content Going back to an older version, adding a translation, and the two ways to relate objects (the generic related-objects list and the relation datatypes), with the settings that control where browsing starts.
- Working with the Exponential Foundation How partners relate to the Exponential Foundation, the nonprofit that operates the open source project - its mission, what it funds, how partners can support it, and which parts of the relationship are still to be…
- Write a workflow event type The PHP side of a workflow event type - the class extending eZWorkflowEventType, registerEventType(), setTriggerTypes(), execute() and its statuses, the process parameters, settings per event, deferring to cron, and…
- Writing a cronjob script Write the script a cronjob part runs - the class-based form with CronjobPart, the variables it receives, output and quiet mode, a description for the console, batches, idempotence, users and errors.
- Adopting an abandoned theme Take over a theme whose author stopped maintaining it - ask first, then continue in the original repository if you are given access, or fork it under a new name; and how old extensions from the community archive can be…
- A privacy notice outline for an Exponential site For public bodies writing the privacy notice of their website - Exponential ships no notice; this outline lists the sections a notice usually has and fills in, for each, the facts an Exponential site can state (cookies…
- Caching layers for engineers Every cache between a visitor and the database of an Exponential site, seen by an engineer - what each layer stores, what it is keyed on, whether it ships on, who it serves, which servers share it, and the correctness…
- Capstone: a complete extension from idea to release All tutorials in one releasable extension: a plan, the full file tree, composer.json, README, tests, the checks before a release, version 0.1.0, publishing and announcing.
Documentation license
This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.
Exponential Copyright © 1998-2026 Exponential Foundation and 7x