Overview

Parameters are attribute-value pairs that are made available to your Symphony project’s front end pages. They allow dynamically-set values to be channeled through the system for use by data sources or in the templating layer. Parameters are commonly used to filter data sources using dynamic values or to access contextual information (like the current date) from within page templates.

There are three types of parameters, grouped according to how their values are set. System parameters are generated by the system and contain useful contextual information such as the current date and time or the current page handle. Data source output parameters are created on the fly by a data source using values from a field in its result entries. URL Parameters are defined in a page’s configuration and their values are set dynamically in a its URL.

Collectively, the parameters available to a page are referred to as the “parameter pool.”

Usage

With Data Sources

Parameters can be referenced in the data source editor—in filter rules, result limit settings, and pagination settings—using XSLT’s attribute value template syntax: {$parameter-name}.

Data sources also have a “”Required URL Parameter setting, but the syntax is slightly different. Because this setting refers to the parameter itself and not to its value, curly braces are not used: $parameter-name.

In the Templating Layer

Parameters can be referenced in page templates and utilities, either by using the attribute value template ({$parameter-name}) or—because the parameter pool is included in a page’s XML source—using XPath.

Details

Parameter Pool

Parameter pool refers to all the parameters available to a page. These are accessible via the page environment (and used as described above), or—as of version 2.0.7—in the page’s XML source.

System Parameters

Below is a listing of all global system parameters.

Parameter Description Example
today The current date 2009-11-30
current-time The current time 19:09
this-year The current year 2009
this-month The current month 11
this-day The current day of the month 30
timezone The system timezone offset +10:00
website-name Website name as set in /manifest/config.php. Blue Ninja Bakery
page-title The current page’s title The Ninja Way
root Root URL of the installation http://blue-ninja-bakery.com
workspace URL of the worspace directory http://blue-ninja-bakery/workspace
root-page Handle of the highest-level ancestor to the current page about
current-page Handle of the current page the-ninja-way
current-page-id ID of the current page 12
current-path Path to the current page, exclusing root /about/philosophy/the-ninja-way
parent-path Path of parent pages /about/philosophy
current-url Full URL of the current page http://blue-ninja-bakery/about/philosophy/the-ninja-way
upload-limit Current site’s upload limit as set in /manifest.config.php 5242880
symphony-version Version of Symphony installed 2.0.7
site-mode Either “live” or “maintenance” depending on whether Maintenance Mode is enabled live
cookie-username Username of currently authenticated author, if applicable admin
cookie-pass Hashed password of the currently authenticated author, if applicable -
Sample XML Output
            
    <parameters>
        <today>2009-11-30</today>
        <current-time>19:09</current-time>
        <this-year>2009</this-year>
        <this-month>11</this-month>
        <this-day>30</this-day>
        <timezone>+10:00</timezone>
        <website-name>Blue Ninja Bakery</website-name>
        <symphony-version>2.0.7</symphony-version>
        <upload-limit>5242880</upload-limit>
        <root>http://blue-ninja-bakery.com</root>
        <workspace>http://blue-ninja-bakery.com/workspace</workspace>
        <page-title>The Ninja Way</page-title>
        <root-page>about</root-page>
        <current-page>the-ninja-way</current-page>
        <current-page-id>12</current-page-id>
        <current-path>/about/philosophy/the-ninja-way</current-path>
        <parent-path>/about/philosophy</parent-path>
        <current-url>http://blue-ninja-bakery/about/philosophy/the-ninja-way</current-url>
        <cookie-username>admin</cookie-username>
        <cookie-pass>7415346ecbf1c95e6894b23456a320e</cookie-pass>
        <site-mode>live</site-mode>
    </parameters>
          

The Big Picture

The ?debug interface, provided by the debug devkit extension, provides a list of all the parameters available to a given page and their assigned values.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details