Path

7x / documentation / ez publish / technical manual / 4.x / reference / template control structures


Caution: This documentation is for eZ Publish legacy, from version 3.x to 6.x.
For 5.x documentation covering Platform see eZ Documentation Center, for difference between legacy and Platform see 5.x Architecture overview.

Template control structures

Conditional control

FunctionSummary
if Allows conditional control by the way of an IF-THEN-ELSE mechanism.
switch Allows conditional control of code execution.

Looping

FunctionSummary
do Creates a do...while loop.
for Creates a generic for loop.
foreach Iterates over arrays in different ways.
while Creates a while loop.

Deprecated

FunctionSummary
section Deprecated looping, branching, etc.

Balazs Halasy (22/02/2005 12:59 pm)

Balazs Halasy (07/07/2005 11:44 am)


Comments

  • substitute for {section loop=..

    hi,
    you are saying here that the {section -construct should be avoided in the future. since i'm relativly new to ez-publish i'd like to get used to the the 'right' ways of template programming right from the beginning. but i cannot find a way to loop over results from a fetch differently than the old {section loop=... way.

    i tried it with {while and {for statments with no success..

    what is best practice for looping over results using the new control structures?
    • Re: substitute for {section loop=..

      Hi Patrick,

      You should try the {foreach} statement.
      It works nearly the same way as the section loop.

      If you want to add conditions, then add a {if} statement.
  • An example of using a foreach loop instead of the deprecated section?

    Hi. Could someone provide an example of how to use a foreach loop instead of the deprecated section loop. Let's say I have the following code and want to use a foreach loop instead of a section:
    <div class="listItem">
    {default node_name=$node.name node_url=$node.url_alias}
    {foreach (
    {section show=$node_url}<a href={$node_url|ezurl}>{/section}{$node_name|wash}{section show=$node_url}</a>{/section}{/default}
    </div>
    


    Thanks.
  • Refer to "logical operators"

    Documentation for each of the control statements should refer to this list of "logical operators" that can be used in <condition> clauses:

    http://ez.no/doc/ez_publish/techn...emplate_operators/logical_operations