Description
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 method-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 13-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} |
|
See also
unregister_block()
and
Plugin Block Functions.