COA, COA_INT

Note

  • COA is an object type (= complex data type).
  • It is a specific cObject data type.

COA stands for “content object array”.

An object with the content type COA is a cObject, in which you can place several other cObjects using numbers to enumerate them.

You can also create this object as a COA_INT in which case it works exactly like the USER_INT object does: It’s rendered non-cached! That way you cannot only render non-cached USER_INT objects, but COA_INT allows you to render every cObject non-cached.

Property

if

Data type

->if

Description

If “if” returns false, the COA is not rendered.

Property

1,2,3,4…

Data type

cObject

Description

Numbered properties to define the different cObjects, which should be rendered.

Property

wrap

Data type

wrap /stdWrap

Property

stdWrap

Data type

->stdWrap

Property

cache

Data type

cache

Description

Stores the rendered content into the caching framework and reads it from there. This allows you to reuse this content on different pages without prior rendering. The presence of cache.key will trigger this feature. See cache function description for details.

[tsref:(cObject).COA/(cObject).COA_INT]

Examples:

lib.contentexample = COA
lib.contentexample {
  10 = TEXT
  10.value = <h1>Header</h1>

  20 = CONTENT
  20 {
    table = tt_content
    select.orderBy = sorting
    select.where = {#colPos}=0
  }

  30 = TEXT
  30.value = <footer>Footer text</footer>
}

The previous example will print a simple h1 header, followed by the page content records and a footer element.

lib.currentDate = COA_INT
lib.currentDate {
  10 = TEXT
  10.stdWrap.data = date:U
  10.stdWrap.strftime = %H:%M:%S
}

This example will not be cached and so will display the current time on each page hit.