set-block
Summary
Redirects the output from a block of template code to a string.Usage
{set-block variable=$variable [ name=name ] [ scope=scope ]} ... {/set-block}
Parameters
Name | Type | Description | Required |
---|---|---|---|
variable | string | The name of the variable (with dollar sign). | Yes. |
name | string | The name of the target namespace. | No. |
scope | string | The scope ("global", "root" or "relative"). | No. |
Description
This mechanism will silently process all template code which is encapsulated by "{set-block ...}" and "{/set-block}". It will not produce any actual output. Instead, the generated output will be assigned to a variable specified by the "variable" parameter (as a string). If the variable does not exist, it will be automatically created. If the same target variable is used in several blocks, its contents will be overwritten every time a new block is processed.
Examples
Example 1
{set-block variable=$example} {def $test=array( 'x', 'y', 'z' )} Hello world - {$test[1]} {/set-block} ... {$example}
The code which is encapsulated by "set-block" will not produce any output. Instead, the output will be put into a string called $example. When this variable is accessed directly, the following output will be produced: "Hello world - y".
Example 2
{set-block scope=global variable=cache_ttl}0{/set-block}
This will put zero into the "cache_ttl" global variable and thus disable view caching for this page.
Balazs Halasy (06/02/2004 1:23 pm)
Svitlana Shatokhina (08/10/2008 9:43 am)
Comments