List of meta attributes

A comprehensive list of all meta attributes available in the CMS.

If you’re looking for detailed description on how meta attributes are used head over to using meta attributes.

1 Baseobjects

1.1 Page

Property name Description
id id of the actual page
url address of the actual page
template template of the actual page
name name of the actual page
filename filename of the actual page
description description of the actual page
priority priority of the actual page
tags tags of the actual page
publishtimestamp UNIX timestamp of the last time a user clicked “publish”
publishdate date of the last time a user clicked “publish”
creationtimestamp UNIX timestamp of the creationdate (taken from customCdate, if set, or the cdate)
creationdate date of the page creation (taken from customCdate, if set, or the cdate)
edittimestamp UNIX timestamp of last page update (taken from customEdate, if set, or the edate)
editdate date of last page update (taken from customEdate, if set, or the edate)
folder reference to pages folder
creator reference to pages creator
editor reference to last editor of the page
publisher reference to the last publisher of the page
language reference to the language of the page
languageset.id id of the pages languageset. A languageset is a collection that groups pages of the same contents but with different translations together. So an English version and a German version of a page have the same languageset.id
languageset.pages reference to other language layouts of the page
online true, in case page is online, else false
ispage returns true
versions version history of the page (see ‘version’ attribute)
version last version of the page
version.number version (e.g. 3.0)
version.date creationdate of the page
version.editor editor of the version
version.major true, if its major version
object object properties of the page
pagevariants returns all page layouts (independent of the page status
ismaster true, if its a master page, false if the page is a localized copy
inherited true, if the page is inherited from a master node, false if not

1.2 Template

Property name Description
id id of the template
name name of the template
tags list of all available tags of the template
ml markup language of the template (e.g. php3, php4, etc.)

1.3 Folder

Property name Description
id id of the folder
name name of the folder
description description of the folder
node reference to the folders node
parent reference to parent folder or NULL on top level
path publish path of the folder
creator the folders creator
editor the last user who edited the folder
creationtimestamp see file.createtimestamp
creationdate see file.createdate
edittimestamp see file.edittimestamp
editdate see file.editdate
folders list of all subfolders or NULL
pages list of pages in this folder or NULL
files list of files of files in this folder or NULL
images list of images in this folder or NULL
filesandimages list of all files and images in this folder or NULL
children list of all subfolders, images and files or NULL
isfolder true
folders list of all subfolders or NULL
object prefix to access object properties of this folder
ismaster true, if its a master folder, false if the folder is a localized copy
inherited true, if the folder is inherited from a master node, false if not

1.4 File

Property name Description
id id of this file
name filename
description description of the file
size size in bytes (int). same as sizeb
sizeb size in bytes (int)
sizekb size in kb (double)
sizemb size in mb (double)
folder reference to the files folder
extension file extension (eg. “jpg”)
creator the user who created the file
editor last user who edited the file
createtimestamp UNIX timestamp of creation time
createdate creation date
edittimestamp UNIX timestamp of last edit
editdate last editdate
type MIME-type of the file
url link to file
width* image width (int)
height* image height (int)
dpix* horizontal dpi resolution (int)
dpiy* vertical dpi resolution (int)
dpi* dpi resolution (int)
fpx* Focal Point position, relative to the width (float, between 0. and 1.)
fpy* Focal Point position, relative to the height (float, between 0. and 1.)
isfile true, in case its a file, false (e.g. file is an image). The system will check the MIME-type of the file. If it starts with “image” isfile will return false.
isimage analog to isfile only for images. If the MIME-type of the file starts with “image” isimage will return true.
object object properties of the file
ismaster true, if its a master file, false if the file is a localized copy
inherited true, if the file is inherited from a master node, false if not
* these properties are only available for images

1.5 Node

Property name Description
id id of the node
https Whether https is enabled (true) for the node or not (false)
host hostname of the node
folder the nodes root folder
path path of the node (alias for pub_dir)
pub_dir Publish directory for pages
pub_dir_bin Publish directory for binary files and images
master The master node of the current node, if it is a channel or null if the current node is not a channel
utf8 True if utf8 encoding is enabled, false otherwise
alohaeditor True if Aloha Editor is enabled for editing, false otherwise
languages list of references of languages of the node

1.6 Tag

Property name Description
TAGNAME references to the tag
tag references to the current tag
id id of the tag
name name of the tag
parts list of parts of the tag
parts.PARTNAME references a single part of a tag
empty 1 in case the tag does not render any output, 0 otherwise
visible 1 if the tag is active, else 0
istag (since Gentics CMS 5.1.3) will always return true for tags

1.7 Rendermode

Property name Description
publish true if the page is rendered during a publish process
live true in case of using the Live Preview
edit true in case of using the Edit Mode
preview true in case of using the Preview Mode
real true in case of using the Real Edit Mode
frontend true when rendering in frontend mode. The return value is valid in edit mode only.
backend true when rendering in backend mode. The return value is valid in edit mode only.

1.8 Imps

Property name Description
velocitytools Velocity ToolsImp
velocitytools.date DateTool
velocitytools.math MathTool
velocitytools.number NumberTool
velocitytools.esc EscapeTool
velocitytools.alternator AlternatorTool
velocitytools.list ListTool
velocitytools.iterator IteratorTool
string String Formatter Imp
date Date Formatter Imp
sorter Sort Imp
loader Loader Imp
url URL Include Imp
1.8.1 String Formatter Imp

The String Formatter Imp provides methods for escaping and other string manipulation:

Syntax Description
$cms.imps.string.escapeHTML(string) Escape special characters (like ‘<’, ‘>’, ‘&’) with entities.
$cms.imps.string.escapeJS(string) Escapes special javascript characters (like ‘\’, ‘’’, ‘"’) with \ to make them save for output in javascript strings.
$cms.imps.string.stripML(string) Remove the embedded HTML tags from user input string to prevent potential problems (in fact it removes anything beginning with < and ending with > ).
$cms.imps.string.trim(string, length) Trim the given string to be no longer than length characters.
$cms.imps.string.regexp(string, pattern, replacement) Replace all occurances of the pattern with replacement.
$cms.imps.string.testRegex(string, regex) Test whether the string matches the regex.
$cms.imps.string.trimWords(string, length) Trim all words in string to be no longer than length. Longer words are trimmed using … as ellipsis.
$cms.imps.string.trimWords(string, length, ellipsis) Trim all words in string to be no longer than length. Longer words are trimmed using ellipsis.
$cms.imps.string.trimWords(string, length, ellipsis, template) Trim all words in string to be no longer than length. Longer words are replaced by template, where $trimmedword will be replaced by the trimmed word and $word with the original one.
$cms.imps.string.encodeURL(string[, string]) URL – encode the specified string and return it. The encoding used to get the bytes for unsafe characters defaults to “utf-8” but may be given as second parameter (e.g. “iso-8859-1”).
$cms.imps.string.implode(Array/Collection, seperator) Convert the given array or collection into a string separating the items with the given string separator.
$cms.imps.string.implode(Array/Collection, separator, prefix, postfix) See above. In addition the items will be pre- and postfixed.
$cms.imps.string.toUpper(string) Convert the given string to all uppercase.
$cms.imps.string.md5(string) Compute the md5 hash of the given String.
1.8.2 Date Formatter Imp

The DateFormatterImp allows you to format date strings and date objects.

Example: using the DateFormatterImp

  // Format the date using the given pattern and the english locale
  $cms.imps.date.format($date, "dd MMM yyyy HH:mm:ss", "en")

  // Format the date using the given pattern. The local is deduced by inspecting the page language.
  $cms.imps.date.format($date, "dd MMM yyyy HH:mm:ss")

  // Create a date by using a timestamp
  $cms.imps.date.fromTimestamp($timestamp)

  // Parse a date string and create a date object
  $cms.imps.date.parse("22 MAR 1984 12:30:00", "dd MMM yyyy HH:mm:ss", "EN")

  // Calculate difference in years between dateA and dateB
  $cms.imps.date.dateDiff($dateA, $dateB, "y")

  // Example of using the imp with edittimestamps
  $cms.imps.date.format($cms.imps.date.fromTimestamp($cms.page.edittimestamp), "MMMM dd, yyyy", "en")
1.8.3 Sort Imp

Sort the given collection (might also be an array or a map) by the given list of properties.

Syntax of the Sort Imp

  $cms.imps.sorter.sort(Collection collection, String[] properties[, boolean caseSensitive][, String languageCode])

Sort the given collection (might also be an array or a map) by the given list of properties. The sortorder can be independently set for each property in the list. When sorting by only one property, one can also pass a single String instead of an array of Strings as value for the parameter properties.

collection Collection to be sorted.
properties Array of sorted properties. The general syntax for a sorted property is [path.to.property][:asc][:desc]. If neither :asc nor :desc are given, the sorting is done ascending.
caseSensitive Optional boolean flag to sort case sensitive (default is false).
languageCode Optional language code. Must be a lower-case, two-letter code as defined by ISO-639-1.
1.8.4 Loader Imp

The Loader Imp can be used to retrieve content objects by id.

Syntax Description
$cms.imps.loader.getObject(type, id) Load the object of type with id. type can be one of “page”, “folder”, “image”, “file”, “node”
$cms.imps.loader.getPage(id) Load the page with id.
$cms.imps.loader.getFolder(id) Load the folder with id.
$cms.imps.loader.getImage(id) Load the image with id.
$cms.imps.loader.getFile(id) Load the file with id.
$cms.imps.loader.getNode(id) Load the node with id.
1.8.5 URL Include Imp

The URLIncludeImp allows you to include contents from other URLs.

Example: using the URLIncludeImp

  $cms.imps.url.include(url, cache, timeout, default)
url URL to be requested
cache cache lifetime in secs, defaults to 300 secs (5 mins)
timeout timeout for accessing the URL and getting the contents in ms, defaults to 2000 ms (2 secs)
default default content to be returned, if the URL cannot be accessed (default: null, will result in an error if URL cannot be accessed)

2 Childobjects

2.1 Language

Property name Description
id id of current language
code code of current language (e.g. “de”)
name name of current language (e.g. “Deutsch”)

2.2 Pagetag/Templatetag Parttype

Property name Description
id id of the pagetag
tag reference to the tag itself
container page or template the tag is referencing to

2.3 Markuplanguage

Property name Description
id id of the markuplanguage
extension fileextension for this markuplanguage
name name of the markuplanguage
contenttype MIME type of the content
feature Optional feature, the markuplanguage is bound to
excludeFromPublishing true if pages using templates with this markuplanguage are excluded from publishing

2.4 User

Property name Description
id id number of the user
firstname the users first name
lastname the users last name
login login name of the user
email mail address of the user
active true, in case user is active now
creator creator of the user
creationdate date of the creation of the user
creationtimestamp timestamp (time in seconds since 1.1.1970) of the creation of the user
editor editor of the user
editdate date where the user was edited last time
edittimestamp timestamp (time in seconds since 1.1.1970) where the user was edited last time
description description of the user

3 Parttypes

3.1 Overview Parttype

3.1.1 Velocity Properties

Properties available when rendering an overview using velocity:

Property name Description
items Collection, viewable objects of the overview
listType Type of objects listed in the overview. One of PAGE, FOLDER, IMAGE, FILE, UNDEFINED
selectType Object selection type. One of FOLDER, AUTO, MANUAL, UNDEFINED
orderBy Ordered attribute. One of CDATE, EDATE, FILESIZE, ALPHABETICALLY, PDATE, PRIORITY, SELF, UNDEFINED
orderDirection Order direction. One of ASC, DESC, UNDEFINED
maxItems Maximum number of listed items
recursive True to select items recursively (when selectType is either FOLDER or AUTO)
Example: iterating an overview using velocity

#foreach($item in $cms.page.tags.overviewtag.overviewpart.items)
$item.key $item.value
#end
3.1.2 <node> Template Properties

These placeholders are available in overview templates (when the overview part is rendered directly, without the use of velocity):

Property name Description
<node ds.nr> iteration counter
<node ds.count> item count for this overview
<node ds.container> container object of the overview (eg. a page)

3.2 Datasource/Select (Single)/Select (Multiple) Parttype

3.2.1 Velocity Properties
Property name Description
items Collection of all entries in the database
selection Collection of all selected entries in the database
nr id of the entry
key entry name
value value of the entry
keys name of the dataset in the database
values values of the database
dsid internal id of the element
Example: list items of a multiselect part

#foreach( $item in $cms.tag.parts.multiselect.items )
$item.key - $item.value
#end
3.2.2 <node> Template Properties

These placeholders are available in datasource templates (when the part is rendered directly, without the use of velocity).

Property name Description
<ds value> the selected value
<ds name> name of the selected value
<ds nr> id of the selected value
<ds dsid> internal id of the element

3.3 Pageurl/Fileurl/Imageurl/Folderurl Parttype

Property name Description
id id of the parttype
internal true if an internal link, false otherwise. Only available for Pageurl Parttype.
target reference to the target object
size Get the formatted size (in KB or MB) of the target file. Only available for Fileurl or Imageurl Parttypes
url url of the target, only available for internal links
node node for which the target was selected, only available for internal links (may be empty)
nodeId ID of the node for which the target was selected, may be 0 but never empty
Example: Output of the id of the url parttype

Node-Style: <node page.tags.tlink1.href.id> 
VTL-Style: $cms.page.tags.tlink1.href.id

3.4 Checkbox Parttype

Property name Description
checked true, in case checkbox was checked, else false

3.5 Text Parttypes

Property name Description
text textual contents of the part

3.6 Node Parttype

In addition to the properties exposed by nodes in general the parttype can resolve the name of the node directly.

Property name Description
name The name of the node