- Shared layouts and zone linking Why one header serves every page - shared layouts, linked zones and the real link map of the Fit & Healthy site - and the "why doesn't my change appear" cases that come from it.
- SVG images SVG in designs and in content: design SVGs you ship yourself, SVG uploads by editors (accepted and sanitized since October 2026, never scaled), what that means for templates, and how to keep SVGs accessible and…
- Testing a multilingual site How to test a multilingual Exponential site before launch and after changes: the test language Lorem Ipsum (qlo-ZZ) with exp:loremipsum, checks per language address, fallbacks, switcher, search, forms and mails…
- The perceivable principle WCAG principle 1, perceivable, explained for a public body running Exponential - what editors, designers and developers each do for text alternatives, media, adaptable structure and distinguishable presentation, and…
- Translations, locales and right-to-left Internationalization in Exponential for developers used to Symfony Translation, Laravel's lang files, gettext in Django and Rails I18n - interface strings in Qt Linguist .ts catalogues, the i18n operator and…
- URL, design, INI and HTTP operators The ten operators of the kernel's eZURLOperator (ezurl, ezroot, ezdesign, ezimage, exturl, ezsys, ezhttp, ezhttp_hasvariable, ezini, ezini_hasvariable), how the ezurlmultisite extension takes them over on a development…
- Workflows and triggers What a workflow, an event, a trigger and the multiplexer are, which event types ship today, and where to build a first approval workflow.
- Writing an import script A complete, worked import for Exponential - reading a CSV export of an ERP, running as a service account, create-or-update by remote_id with change detection, a dry run, batches and memory, a safety stop, logging and a…
- Extension points from PHP Where PHP code plugs into Exponential without editing the kernel - the registration mechanisms (directory, handler, autoload, file, design, ini, registry, filter, override), the extension points a PHP developer uses…
- How do I find what is not translated yet? Each object's Translations window lists the languages it has; Setup > Languages shows per language how many objects have it and which ones; inside an object, an empty field of a translation is the untranslated one.
- Cache invalidation and clearing How Exponential invalidates its caches on its own (eZContentCacheManager on publish, the content/cache event, expiry timestamps, query cache table tracking) and how to clear them by hand by id or tag, which change needs…
- Calling expservices from an app Call the expservices remote services from app code - the URL with arguments joined by ::, percent encoding, the ezjscore wrapper and the envelope inside it, paging with meta.has_more, discovering services from the…
- Check security headers Step by step - verify that every page of a public website carries the five security headers Exponential sends by default, that dot files and PHP files below the root answer 404, and that the session cookie has the right…
- Check what a role allows Step by step - read a role's page to see every policy as a sentence, who it reaches and with which limitations, spot dangerous badges and dead limitations, and test it with a test account.
- CLI scripts with eZScript Write command line tools for an application - the class-based Command with script(), startup() and options, the classic eZScript pattern, eZCLI output, siteaccess and user, exit codes, dry runs and safety.
- Command line: the console and eZScript The Exponential counterpart of bin/console, artisan, manage.py, rails commands and Spring Boot runners - bin/php/console with its exp:, ext:, shell: and cron: namespaces, writing a command as an…
- Console commands for developers The ./console commands extension developers use most - settings, caches, autoloads, class and template checks, help, logs, content jobs - and how an extension's scripts appear as ext: commands.
- Export and remove form submissions Step by step - the periodic retention routine for web form submissions in Exponential: export what must be kept to your case or records system as CSV, then remove the collections on Setup > Collected information, and…
- ezjscore JSON endpoints in PHP Writing ezjscore server functions in PHP - the [ezjscServer_<name>] block, the static method that receives the arguments array, the answer envelope, permissions with Functions[] and RequirePolicy, POST writes with the…
- ezjscore template operators The template operators the ezjscore extension adds: the packer operators for stylesheets and scripts, json_encode, xml_encode and node_encode for handing data to scripts, and has_access_to_limitation.
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