Smarty Manual
Prev |  | Next

# register_block

register_block --

##

void register_block ( string name, mixed impl, bool cacheable, mixed cache_attrs)

Use this to dynamically register block functions plugins. Pass in the block function name, followed by the PHP function callback that implements it.

The php-function callback `impl` can be either (a) a string containing the function name or (b) an array of the form `array(&$object, $method)` with `&$object` being a reference to an object and `$method` being a string containing the mehod-name or (c) an array of the form `array(&$class, $method)` with `$class` being a classname and `$method` being a class method of that class.

`cacheable` and `cache_attrs` can be omitted in most cases. See Controlling Cacheability of Plugins' Output on how to use them properly.

Example 1. register_block
`<?php $smarty->register_block("translate", "do_translation"); function do_translation ($params, $content, &$smarty, &$repeat) { if (isset($content)) { $lang = $params['lang']; // do some translation with $content return $translation; } } ?>`
where the template is:
    {* template *}
    {translate lang="br"}
    Hello, world!
    {/translate}

Prev | Home | Next
load_filter | Up | register_compiler_function