Config Files

{config_load} — is used for loading config #variables# from a configuration file into the template.

Attributes
Attribute Name Required Description
file Yes The name of the config file to include
section No The name of the section to load
Examples
example.conf
#this is config file comment

# global variables
pageTitle = "Main Menu"
bodyBgColor = #000000
tableBgColor = #000000
rowBgColor = #00ff00

#customer variables section
[Customer]
pageTitle = "Customer Info"

and the template:

{config_load file="example.conf"}
{config_load "example.conf"}  {* short-hand *}

<html>
    <title>{#pageTitle#|default:"No title"}</title>
    <body bgcolor="{#bodyBgColor#}">
        <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
           <tr bgcolor="{#rowBgColor#}">
              <td>First</td>
              <td>Last</td>
              <td>Address</td>
           </tr>
        </table>
    </body>
</html>

Config Files may also contain sections. You can load variables from within a section with the added attribute section. Note that global config variables are always loaded along with section variables, and same-named section variables overwrite the globals.

Config file sections and the built-in template function called {section} have nothing to do with each other, they just happen to share a common naming convention.
Example #2, short syntax
{config_load file='example.conf' section='Customer'}
{config_load 'example.conf' 'Customer'} {* short-hand *}

<html>
    <title>{#pageTitle#|default:"No title"}</title>
    <body bgcolor="{#bodyBgColor#}">
        <table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
           <tr bgcolor="{#rowBgColor#}">
              <td>First</td>
              <td>Last</td>
              <td>Address</td>
           </tr>
        </table>
    </body>
</html>
Was this article helpful?