Welcome to eZpedia!

The free eZ Publish encyclopedia that anyone can edit. eZpedia has accumulated 722  english articles since 2006. We encourage you to create an account and create or edit a page yourself. Some folks create an article in the people namespace with their full name as the article name with a brief description of who they are, their interests, goals and objectives.

Ask A Question

Do you have an eZ Publish question, do you need an eZ Publish answer? Simply login and ask your question in our discussion forum. We publicly write free documentation based on your submissions. Posting on eZpedia is a great way to get answers you need and contribute to our freely available community documentation for eZ Publish.

Chat with other eZ Publish Developers LIVE from around the World!

Ecosystem

Read about what is going on within the various eZ Publish related websites on internet.

Recent development activity

Track the development progress through the roadmap by reviewing recent Exponential Git activity from the github repository.

github.com/ezsystems/ezpublish-legacy commit log rss feed
Last updated: 2026-10-07T16:26:34Z
2026-10-07T16:26:34Z
Updated: The file manifest carries the checksum of composer.json with sevenx_themes_media 1.5.45, exp_enhanced_link 1.0.6 and xrowmetadata 1.4.5
2026-10-07T16:26:33Z
Updated: Require sevenx_themes_media 1.5.45, exp_enhanced_link 1.0.6 and xrowmetadata 1.4.5, which leave the media sites' debug output clean
2026-10-07T16:24:38Z
Updated: The file manifest carries the checksums of the SQLite object attribute id fix and its test
2026-10-07T16:24:18Z
Updated: Merge the SQLite object attribute ids of a class attribute added to a class with objects

On SQLite, adding an attribute to a class that already has objects inserted
the new object attribute rows without an id, since the table's key is
(id, version). Each new row now gets an id after the current maximum,
shared by all versions of the same object and language.
2026-10-07T16:06:56Z
Updated: Merge the Copy Messages button of the debug bar's Messages tab

The Messages tab has a Copy Messages button that copies the messages shown,
respecting the level buttons and the filter, as plain text: the level,
source and time of each, then its text, a blank line between them. It uses
the clipboard API and falls back to a copy through a hidden text area.
2026-10-07T16:05:33Z
Added: Copy Messages button on the debug bar's Messages tab

The Messages tab of the Exp Debug bar gets a "Copy Messages" button that
copies the messages that are shown, with the level buttons and the filter
box applied, to the clipboard as plain text: per entry a line
"Level: source", a tab and the time, then the message, a blank line
between entries, as selecting the list would give them.

It copies with navigator.clipboard and falls back to a hidden text field
and execCommand('copy') where the page is not a secure context. A status
line next to the button says how many messages were copied, that none are
shown, or that the copy failed. The button is a real button, hidden until
the script runs, styled as the bar's other buttons.

The words are translated in the debug bar's context
(design/standard/debugbar) in eng-US and ger-DE and listed in
expDebugBarReport::scriptStrings().

Test: expDebugBarReportCopyMessagesTest (no database): the rendered report
carries the button, its status line and the rows the script reads; every
word the script translates is listed; the translations are there; the
script copies with a fallback. Checked in Chromium on a rendered bar: all
three messages, the filtered and the level-chosen ones, nothing shown, the
fallback path and the focus returning to the button.

The file manifest carries the new checksums and the new test.
2026-10-07T15:59:09Z
Updated: A class attribute added to a class with objects gets object attribute ids on SQLite

ezcontentobject_attribute's key is ( id, version ). SQLite numbers a row by
itself only for a single INTEGER key, so the batch INSERT ... SELECT in
eZContentClassAttribute::initializeObjectAttributes() left the id of every
new row NULL. Such an attribute cannot be fetched back, and each page
showing the object logged "eZImageAliasHandler::storeDOMTree: Invalid
objectAttribute: id = version = N" when its image was looked at.

The SQLite branch now gives one new id per object and language, after the
highest id in the table, shared by all versions of that object and
language, as the other databases' batch initialization does
(eZContentClassAttribute::assignMissingSQLiteObjectAttributeIDs()).
The empty update statement is no longer sent to databases without one.

Test: eZContentClassAttributeSQLiteIDsTest replays the batch insert in an
in-memory SQLite database and checks the ids.

Recent discussions

Read what others are discussing

Recently updated articles

Read recently modified articles

ezpedia.org updated content rss feed
  1. eZ : Main page
  2. Solution : Read-only site
    • @5 | 2025/01/25 @ 17:17:56 : Graham Brookins : History - based on version 4, republishing in attempt to regain example settings display
  3. Solution : Reseting the admin password in eZ publish
    • @15 | 2024/10/25 @ 21:09:06 : Graham Brookins : History - based on version 14 added missing comma to example copy and paste code.
  4. Learning : Extensions
  5. Learning : Standard Events
  6. Learning : Standard Triggers
  7. Learning : A workflow
  8. Learning : Events
  9. Learning : Workflow
  10. Learning : Roles
  11. Learning : Policies
  12. Learning : User Groups
  13. Learning : Site Access
  14. Learning : Design Structure
  15. Learning : Default Design
  16. Learning : Access Control
  17. Learning : Designs
  18. Learning : Template Override System
  19. Learning : Pagelayout.tpl
  20. Learning : Custom System Templates