Blame | Letzte Änderung | Log anzeigen | RSS feed
registerPlugin()dynamically register pluginsDescription===========voidregisterPluginstringtypestringnamemixedcallbackboolcacheablemixedcache\_attrsThis method registers functions or methods defined in your script asplugin. It uses the following parameters:- `cacheable` and `cache_attrs` can be omitted in most cases. See[controlling cacheability of plugins output](#caching.cacheable) onhow to use them properly.<!-- --><?php$smarty->registerPlugin("function","date_now", "print_current_date");function print_current_date($params, $smarty){if(empty($params["format"])) {$format = "%b %e, %Y";} else {$format = $params["format"];}return strftime($format,time());}?>And in the template{date_now}{* or to format differently *}{date_now format="%Y/%m/%d"}<?php// function declarationfunction do_translation ($params, $content, $smarty, &$repeat, $template){if (isset($content)) {$lang = $params["lang"];// do some translation with $contentreturn $translation;}}// register with smarty$smarty->registerPlugin("block","translate", "do_translation");?>Where the template is:{translate lang="br"}Hello, world!{/translate}<?php// let's map PHP's stripslashes function to a Smarty modifier.$smarty->registerPlugin("modifier","ss", "stripslashes");?>In the template, use `ss` to strip slashes.<?php{$var|ss}?>See also [`unregisterPlugin()`](#api.unregister.plugin), [pluginfunctions](#plugins.functions), [plugin blockfunctions](#plugins.block.functions), [plugin compilerfunctions](#plugins.compiler.functions), and the [creating pluginmodifiers](#plugins.modifiers) section.