- Clear the Velocity response cache Step by step - make Velocity serve freshly rendered pages after a template change, a correction or a restore, with exp:velocity cache clear, at the right moment, and check with the X-Cache and Age headers.
- Communication channels for partners Every channel a partner uses - the partner team, support tickets, issue trackers, forums, Telegram, Slack, Discord, mailing lists, security reporting - which one to use for which purpose, and etiquette for each.
- composer.json for a theme Write the composer.json that makes a theme installable with composer require - name, description, type ezpublish-legacy-extension, license, authors, support, require, suggest and the extension name - with a complete…
- Console commands The bin/php/console entry point - command names and namespaces, extension commands found automatically, describing your own commands, options and exit codes, and the commands an application developer uses every day.
- Copyright notices in files Where a theme states its copyright and license - LICENSE, README, metadata files and optional file headers - the notice the Free Software Foundation recommends for GPL code, and how to treat notices of others.
- Events, listeners and filters The kernel's event hub ezpEvent for PHP developers - notify and filter events, registering listeners in site.ini [Event] and [RunnableSettings] or with attach(), the events the kernel sends, writing a filter that…
- Hosting panel installers How to bundle Exponential as a one-click install in a hosting control panel or an app installer - which installer to call, the steps around it (account, database, code, install as the account's user, web server rules…
- How do I translate an object into another language? Click Edit on the object, choose the language under New translation and the language to copy from under Translate based on, translate the fields and click Send for publishing.
- INI files an extension author meets Which kernel INI file and section an extension adds to for each purpose - site, module, content, workflow, cronjob, design, override, ezjscore, menu, admininterface, rad - and how append files work.
- ISO/IEC 27001 and an Exponential site For public bodies with an information security management system based on ISO/IEC 27001 - how a website run with Exponential enters the ISMS scope, which product features provide evidence for typical controls, and what…
- JSON endpoints for apps The landing page of the JSON endpoint pages for app developers - the ezjscore call interface, the expservices remote services an app is most likely to use, and when to ask for a server function of your own.
- Kernel class overrides: the last resort Replacing a kernel class through the override autoload map: how it works, what it costs, the wizard and its drift check, and the lighter mechanisms to try first.
- Layout rules: which page gets which layout Map layouts to pages with rules - targets (node, subtree, path), conditions (siteaccess, class, time, parameters), priorities and the first-match rule - with recipes and a troubleshooting table.
- Lead handoffs for resellers How resellers hand leads to 7x and to other partners, and receive leads back - the principles, consent, the hand-off note, response times, conflicts, commission records and closing the loop - building on the partner…
- Module view templates How a module view renders its templates - the PHP side (eZTemplate::factory(), setVariable(), fetch( 'design:...' )), the $Result array a view returns, and how the kernel hands it to the pagelayout as $module_result…
- PHP string functions as operators The sixty-odd PHP string functions available as template operators since 6.0.13 (strlen, substr, str_contains, sprintf, number_format, strip_tags, ...), how the piped value maps to PHP's first argument, and…
- Publish a profile of an official For editors - publish the public role profile of an elected or appointed official with the Person class (or an Article), limited to public role information, with consent for the photo, and take it down or archive it…
- Raise the version history limit for records Task for administrators: keep more versions of record-relevant classes (decisions, disclosure entries, meetings) than the default 45, with VersionHistoryClass in content.ini, and check the effect.
- Set the sender details in the mail footer Step by step - fill in the organization name, postal address and privacy notice link that Exponential's mail gate adds to every optional mail (they ship empty), and check them on the status page and in a test mail.
- Set up a review state group Step by step - create a "Review" state group with Draft, In review and Approved, mark existing public content Approved first, then let visitors read only approved content and give authors and reviewers the right state…
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