Name
register_block (Block-Funktion registrieren)
void register_block(string name,
mixed impl,
bool cacheable,
mixed cache_attrs);
Wird verwendet, um Block-Funktion-Plugins dynamisch zu registrieren. Übergeben Sie dazu den Namen der Block-Funktion und den Namen der PHP-Callback-Funktion, die die entsprechende Funktionalität bereitstellt.
Der Parameter impl
kann als (a) einen Funktionnamen oder (b) einem Array der Form array(&$object, $method)
,
wobei &$object
eine Referenz zu einem Objekt und $method
der Name der Methode die aufgerufen werden soll ist,
oder als Array der Form array(&$class, $method)
, wobei $class
der Name der Klasse und $method
der Name der Methode ist die aufgerufen werden soll, übergeben werden.
$cacheable
und $cache_attrs
können in den meisten Fällen weggelassen werden. Konsultieren Sie Die Ausgabe von cachebaren Plugins Kontrollieren für weitere Informationen.
Example 13.21. register_block (Block-Funktion registrieren)
<?php $smarty->register_block("translate", "do_translation"); function do_translation ($params, $content, &$smarty, &$repeat) { if (isset($content)) { $lang = $params['lang']; // übersetze den Inhalt von '$content' return $translation; } } ?>
Wobei das Template wie folgt aussieht:
{* template *} {translate lang="br"} Hello, world! {/translate}