Home / Company / New features / How to develop with Exponential

How to develop with Exponential

The content class concept

Any piece of content in Exponential is a content object, which is an instance of a specific content class. A content class is a definition of an arbitrary data structure. It does not store any actual data.

A content class is made up of attributes. The characteristics of an attribute are determined by the datatype that is chosen for that specific attribute. By combining different datatypes, it is possible to represent complex data structures.

The illustration above shows the anatomy of a content class called "Article", which defines a data structure for storing news articles. It consists of attributes dedicated for storing the title, an introduction text and the actual body of an article.

Custom design: CSS and templates

The first thing you may be willing to do is to change the look of your Exponential site. This can be done by modifying the CSS of Exponential and overriding templates. You can even create reusable site packages that include these CSS and template changes.

High-quality library of PHP components

Exponential 4.X as well as the next generations of Exponential are based on eZ Components which are a high quality library of independent components aiming to help developers creating web centric applications like for example customising and extending Exponential.

In the eZ Components you will find components that focus their attention on solving important parts of Web application development. They are written for solving the re-occurring issues that Web application developers have to deal with when building their applications - without any superfluous ballast.

In order to cater for this goal, quality is also an important factor. The eZ Components development team uses a test-driven development methodology where a large effort is put into making the APIs easily testable. This also results in a better API for developers to use.

Build Exponential extensions

There is a clear API to develop your own PHP extensions in order to extend the functionality of Exponential. By using extensions it is possible to create new modules, datatypes, template operators, workflow events , or any integration with third party applications. You will find many contributed extensions available at Contribution page.

Which development environment?

In an Exponential project, a Subversion (SVN) repository is usually set up to track all changes during development projects. When it comes to IDE, both Eclipse and PHPEdit have been optimised for Exponential.

Exponential community and resources

When you start developing with Exponential, the community is definitely an environment to get in touch with. You will find your answers or get help in the forums as well as many contributions that will make save you time in your development projects.

Comments

Log in or create a user account to comment.

eZ debug

Clear cache:

Quick settings:

Timing: Oct 23 2026 10:50:46
Script start
Notice: expMongoDB::query(1 rows, 4.378 ms) query number per page:0 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"parent":0,"text_md5":"93c731f1c3a84ef05cd54d044c379eaa"}
Notice: expMongoDB::query(1 rows, 1.806 ms) query number per page:1 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"parent":76,"text_md5":"cc9126674839b9487fb129b5d0b0ad1e"}
Notice: expMongoDB::query(1 rows, 1.268 ms) query number per page:2 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"parent":112,"text_md5":"6d6d8800c3bcb9577090de2063da1843"}
Timing: Oct 23 2026 10:50:46
Module start 'content'
Timing: Oct 23 2026 10:50:46
Module end 'content'
Notice: expMongoDB::query(1 rows, 1.485 ms) query number per page:3 Oct 23 2026 10:50:46
aggregate(ezbasket) {"session_id":""}
Notice: expMongoDB::query(0 rows, 0.622 ms) query number per page:4 Oct 23 2026 10:50:46
aggregate(ezproductcollection_item) {"productcollection_id":2}
Notice: expMongoDB::query(1 rows, 1.136 ms) query number per page:5 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"contentclass_id":15}
Notice: expMongoDB::query(1 rows, 0.930 ms) query number per page:6 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":154}
Notice: expMongoDB::query(0 rows, 2.924 ms) query number per page:7 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/97\/133\/154\/.+"},"node_id":{"$ne":154},"depth":5,"is_invisible":0}
Notice: expMongoDB::query(1 rows, 0.784 ms) query number per page:8 Oct 23 2026 10:50:46
aggregate(ezcontentclass) {"identifier":"template_look","version":0}
Notice: expMongoDB::query(1 rows, 2.374 ms) query number per page:9 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"contentclass_id":15,"status":1}
Notice: expMongoDB::query(1 rows, 0.467 ms) query number per page:10 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"contentclass_id":15}
Notice: expMongoDB::query(1 rows, 2.070 ms) query number per page:11 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":154}
Notice: expMongoDB::query(1 rows, 0.948 ms) query number per page:12 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":133}
Notice: expMongoDB::query(1 rows, 1.146 ms) query number per page:13 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":154}
Notice: expMongoDB::query(1 rows, 0.646 ms) query number per page:14 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":154}
Notice: expMongoDB::query(1 rows, 1.383 ms) query number per page:15 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/97\/133\/154\/.+"},"node_id":{"$ne":154}}
Notice: expMongoDB::query(1 rows, 1.504 ms) query number per page:16 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":154}
Notice: expMongoDB::query(1 rows, 1.120 ms) query number per page:17 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":154}
Notice: expMongoDB::query(1 rows, 1.074 ms) query number per page:18 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/97\/133\/154\/.+"},"node_id":{"$ne":154}}
Notice: expMongoDB::query(4 rows, 1.105 ms) query number per page:19 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:133","eznode:154"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 1.091 ms) query number per page:20 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":242}
Notice: expMongoDB::query(1 rows, 0.657 ms) query number per page:21 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":95}
Notice: expMongoDB::query(1 rows, 0.617 ms) query number per page:22 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":131}
Notice: expMongoDB::query(1 rows, 0.635 ms) query number per page:23 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":152}
Notice: expMongoDB::query(13 rows, 2.271 ms) query number per page:24 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"contentobject_id":152,"version":1,"language_code":"eng-US"}
Notice: expMongoDB::query(1 rows, 2.137 ms) query number per page:25 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":2}
Notice: expMongoDB::query(1 rows, 1.621 ms) query number per page:26 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":2}
Notice: expMongoDB::query(8 rows, 6.267 ms) query number per page:27 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/.+"},"node_id":{"$ne":2},"depth":{"$lte":2},"is_invisible":0}
Notice: expMongoDB::query(65 rows, 9.583 ms) query number per page:28 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":206,"version":2,"language_code":"eng-US"},{"contentobject_id":197,"version":1,"language_code":"eng-US"},{"contentobject_id":189,"version":1,"language_code":"eng-US"},{"contentobject_id":95,"version":1,"language_code":"eng-US"},{"contentobject_id":92,"version":1,"language_code":"eng-US"},{"contentobject_id":89,"version":1,"language_code":"eng-US"},{"contentobject_id":69,"version":1,"language_code":"eng-US"},{"contentobject_id":65,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 1.060 ms) query number per page:29 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":208}
Notice: expMongoDB::query(3 rows, 3.618 ms) query number per page:30 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/208\/.+"},"node_id":{"$ne":208},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(33 rows, 3.850 ms) query number per page:31 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":207,"version":1,"language_code":"eng-US"},{"contentobject_id":239,"version":1,"language_code":"eng-US"},{"contentobject_id":92,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 0.644 ms) query number per page:32 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":208}
Notice: expMongoDB::query(1 rows, 1.531 ms) query number per page:33 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/208\/.+"},"node_id":{"$ne":208},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.510 ms) query number per page:34 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:208"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.732 ms) query number per page:35 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":206}
Notice: expMongoDB::query(3 rows, 0.388 ms) query number per page:36 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:208","eznode:209"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.608 ms) query number per page:37 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":207}
Notice: expMongoDB::query(3 rows, 0.377 ms) query number per page:38 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:208","eznode:241"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.531 ms) query number per page:39 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":239}
Notice: expMongoDB::query(3 rows, 0.393 ms) query number per page:40 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:208","eznode:259"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.557 ms) query number per page:41 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":92}
Notice: expMongoDB::query(1 rows, 0.363 ms) query number per page:42 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":199}
Notice: expMongoDB::query(2 rows, 1.711 ms) query number per page:43 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/199\/.+"},"node_id":{"$ne":199},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(14 rows, 1.501 ms) query number per page:44 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":198,"version":1,"language_code":"eng-US"},{"contentobject_id":202,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 0.446 ms) query number per page:45 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":199}
Notice: expMongoDB::query(1 rows, 0.782 ms) query number per page:46 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/199\/.+"},"node_id":{"$ne":199},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.411 ms) query number per page:47 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:199"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.590 ms) query number per page:48 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":197}
Notice: expMongoDB::query(3 rows, 0.402 ms) query number per page:49 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:199","eznode:200"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.651 ms) query number per page:50 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":198}
Notice: expMongoDB::query(3 rows, 0.340 ms) query number per page:51 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:199","eznode:204"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.545 ms) query number per page:52 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":202}
Notice: expMongoDB::query(1 rows, 0.380 ms) query number per page:53 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":191}
Notice: expMongoDB::query(3 rows, 1.790 ms) query number per page:54 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/191\/.+"},"node_id":{"$ne":191},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(21 rows, 1.805 ms) query number per page:55 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":190,"version":1,"language_code":"eng-US"},{"contentobject_id":192,"version":1,"language_code":"eng-US"},{"contentobject_id":196,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 0.892 ms) query number per page:56 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":191}
Notice: expMongoDB::query(1 rows, 0.989 ms) query number per page:57 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/191\/.+"},"node_id":{"$ne":191},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.380 ms) query number per page:58 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:191"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.732 ms) query number per page:59 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":189}
Notice: expMongoDB::query(3 rows, 0.374 ms) query number per page:60 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:191","eznode:192"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.575 ms) query number per page:61 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":190}
Notice: expMongoDB::query(3 rows, 0.343 ms) query number per page:62 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:191","eznode:194"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.536 ms) query number per page:63 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":192}
Notice: expMongoDB::query(3 rows, 0.328 ms) query number per page:64 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:191","eznode:198"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.691 ms) query number per page:65 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":196}
Notice: expMongoDB::query(1 rows, 0.432 ms) query number per page:66 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":97}
Notice: expMongoDB::query(7 rows, 4.521 ms) query number per page:67 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/97\/.+"},"node_id":{"$ne":97},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(45 rows, 3.786 ms) query number per page:68 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":131,"version":1,"language_code":"eng-US"},{"contentobject_id":162,"version":1,"language_code":"eng-US"},{"contentobject_id":130,"version":1,"language_code":"eng-US"},{"contentobject_id":167,"version":1,"language_code":"eng-US"},{"contentobject_id":165,"version":1,"language_code":"eng-US"},{"contentobject_id":163,"version":1,"language_code":"eng-US"},{"contentobject_id":164,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 0.647 ms) query number per page:69 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":97}
Notice: expMongoDB::query(1 rows, 1.132 ms) query number per page:70 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/97\/.+"},"node_id":{"$ne":97},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.432 ms) query number per page:71 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(3 rows, 0.372 ms) query number per page:72 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:133"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(3 rows, 0.317 ms) query number per page:73 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:164"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.897 ms) query number per page:74 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":162}
Notice: expMongoDB::query(3 rows, 0.457 ms) query number per page:75 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:132"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.662 ms) query number per page:76 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":130}
Notice: expMongoDB::query(3 rows, 0.351 ms) query number per page:77 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:169"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.580 ms) query number per page:78 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":167}
Notice: expMongoDB::query(3 rows, 0.334 ms) query number per page:79 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:167"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.565 ms) query number per page:80 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":165}
Notice: expMongoDB::query(3 rows, 0.596 ms) query number per page:81 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:165"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.646 ms) query number per page:82 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":163}
Notice: expMongoDB::query(3 rows, 0.650 ms) query number per page:83 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:97","eznode:166"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.649 ms) query number per page:84 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":164}
Notice: expMongoDB::query(1 rows, 0.438 ms) query number per page:85 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":94}
Notice: expMongoDB::query(2 rows, 1.905 ms) query number per page:86 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/94\/.+"},"node_id":{"$ne":94},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(16 rows, 1.969 ms) query number per page:87 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":93,"version":1,"language_code":"eng-US"},{"contentobject_id":94,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 0.572 ms) query number per page:88 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":94}
Notice: expMongoDB::query(1 rows, 0.786 ms) query number per page:89 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/94\/.+"},"node_id":{"$ne":94},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.347 ms) query number per page:90 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:94"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(3 rows, 0.380 ms) query number per page:91 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:94","eznode:95"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.676 ms) query number per page:92 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":93}
Notice: expMongoDB::query(3 rows, 0.354 ms) query number per page:93 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:94","eznode:96"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.563 ms) query number per page:94 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":94}
Notice: expMongoDB::query(1 rows, 0.436 ms) query number per page:95 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":91}
Notice: expMongoDB::query(1 rows, 1.261 ms) query number per page:96 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/91\/.+"},"node_id":{"$ne":91},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(13 rows, 1.212 ms) query number per page:97 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"contentobject_id":90,"version":1,"language_code":"eng-US"}
Notice: expMongoDB::query(1 rows, 0.418 ms) query number per page:98 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":91}
Notice: expMongoDB::query(1 rows, 0.736 ms) query number per page:99 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/91\/.+"},"node_id":{"$ne":91},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.368 ms) query number per page:100 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:91"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.624 ms) query number per page:101 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":89}
Notice: expMongoDB::query(3 rows, 0.365 ms) query number per page:102 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:91","eznode:92"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.567 ms) query number per page:103 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":90}
Notice: expMongoDB::query(1 rows, 0.444 ms) query number per page:104 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":71}
Notice: expMongoDB::query(1 rows, 1.211 ms) query number per page:105 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/71\/.+"},"node_id":{"$ne":71},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(7 rows, 2.011 ms) query number per page:106 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"contentobject_id":70,"version":1,"language_code":"eng-US"}
Notice: expMongoDB::query(1 rows, 0.560 ms) query number per page:107 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":71}
Notice: expMongoDB::query(1 rows, 0.978 ms) query number per page:108 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/71\/.+"},"node_id":{"$ne":71},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.463 ms) query number per page:109 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:71"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.907 ms) query number per page:110 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":69}
Notice: expMongoDB::query(3 rows, 0.517 ms) query number per page:111 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:71","eznode:72"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.868 ms) query number per page:112 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":70}
Notice: expMongoDB::query(1 rows, 0.543 ms) query number per page:113 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":67}
Notice: expMongoDB::query(3 rows, 2.759 ms) query number per page:114 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/67\/.+"},"node_id":{"$ne":67},"depth":{"$lte":3},"is_invisible":0}
Notice: expMongoDB::query(33 rows, 3.873 ms) query number per page:115 Oct 23 2026 10:50:46
aggregate(ezcontentobject_attribute) {"$or":[{"contentobject_id":66,"version":1,"language_code":"eng-US"},{"contentobject_id":67,"version":1,"language_code":"eng-US"},{"contentobject_id":68,"version":1,"language_code":"eng-US"}]}
Notice: expMongoDB::query(1 rows, 0.910 ms) query number per page:116 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"node_id":67}
Notice: expMongoDB::query(1 rows, 1.183 ms) query number per page:117 Oct 23 2026 10:50:46
aggregate(ezcontentobject_tree) {"path_string":{"$regex":"^\/1\/2\/67\/.+"},"node_id":{"$ne":67},"depth":3,"is_invisible":0}
Notice: expMongoDB::query(2 rows, 0.550 ms) query number per page:118 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:67"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 1.019 ms) query number per page:119 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":65}
Notice: expMongoDB::query(3 rows, 0.489 ms) query number per page:120 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:67","eznode:68"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.860 ms) query number per page:121 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":66}
Notice: expMongoDB::query(3 rows, 0.510 ms) query number per page:122 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:67","eznode:69"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 0.860 ms) query number per page:123 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":67}
Notice: expMongoDB::query(3 rows, 0.518 ms) query number per page:124 Oct 23 2026 10:50:46
aggregate(ezurlalias_ml) {"action":{"$in":["eznode:2","eznode:67","eznode:70"]},"is_original":1,"is_alias":0}
Notice: expMongoDB::query(1 rows, 1.133 ms) query number per page:125 Oct 23 2026 10:50:46
aggregate(ezcontentobject) {"id":68}
Timing: Oct 23 2026 10:50:46
Script end

Main resources:

Total runtime0.2237 sec
Peak memory usage4,096.0000 KB
Database Queries126

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0288 809.898482.8359
Module start 'content' 0.02880.0065 892.734485.2891
Module end 'content' 0.03530.1883 978.0234400.8750
Script end 0.2236  1,378.8984 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00251.1060340.0001
MongoDB Total
MongoDB queries0.153568.64751260.0012
Template Total0.189884.820.0949
Template load0.00090.404220.0005
Template processing0.188884.432120.0944
Override
Cache load0.00030.126820.0001
General
dbfile0.00482.1296190.0003
String conversion0.00000.006720.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/ezwt/design/standard/stylesheets/websitetoolbar.css
extension/sevenx_themes_simple/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx_themes_simple/design/simple/stylesheets/magnific-popup.css
extension/sevenx_themes_simple/design/simple/stylesheets/main.css
extension/sevenx_themes_simple/design/simple/stylesheets/main.res.css
JS0extension/ezwebin/design/ezwebin/javascript/insertmedia.js
extension/ezjscore/design/standard/javascript/jquery-3.7.1.min.js
extension/sevenx_themes_simple/design/simple/javascript/jquery.magnific-popup.js
extension/sevenx_themes_simple/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx_themes_simple/design/simple/templates/pagelayout.tplEdit templateOverride template
1setup/debug_toolbar.tpl<No override>design/standard/templates/setup/debug_toolbar.tplEdit templateOverride template
 Number of times templates used: 2
 Number of unique templates used: 2

Time used to render debug report: 0.0009 secs