smarty template engine
Thursday, January 08, 2009  
download | documentation | faq | forum | mailing lists | changelog | contribs 


search for in the  


register_block

register_block -- 

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

Используйте для динамической регистрации плагинов блоковых функций. В качестве аргументов передаются имя блоковой функции и имя функции, реализующей ее.

Коллбек-функцией php impl может быть (a) строка, содержащая имя функции, или (b) массив вида array(&$object, $method), где &$object является ссылкой на объект, а $method является строкой, содержащей имя метода, или (c) массив в форме array($class, $method), где $class является именем класса, а $method является методом этого класса.

cacheable и cache_attrs в большинстве случаев могут быть опущены. Смотрите Управление кэшированием результатов работы плагинов для получения информации об их правильном использовании.

Пример 13-1. register_block

<?php
$smarty
->register_block("translate""do_translation");

function 
do_translation ($params$content, &$smarty, &$repeat)
{
  if (isset(
$content)) {
    
$lang $params['lang'];
    
// выполняем перевод $content
    
return $translation;
  }
}
?>

Содержимое шаблона:

{* шаблон *}
{translate lang="br"}
Hello, world!
{/translate}



 

credits 

Smarty Copyright © 2002-2008
New Digital Group, Inc.

All rights reserved.