Виртуальные методы
Если вам понадобиться динамически создать метод для контроллера или модели одного компонента через хуки другого, воспользуйтесь данным функционалом.
Помните, виртуальные методы уникальны.
У одного класса не может быть два метода.
Если реальный метод существует, то виртуальный будет игнорироваться.
/**
* Виртуальный метод Comments для контроллера Index компонента Nodes.
*
* @param object $CI Сущность движка.
* @param object $id Номер ноды.
* ...
* @return void
*/
function nodes_comments($CI,$id){
$CI->comments->show($id);
}
// ------------------------------------------------------------------------
...
/*
* Использование
*/
$CI->nodes->comments($id);
/**
* Виртуальный метод captcha для модели Form.
*
* @param object $Form Объект модели.
* ...
* @return void
*/
function form_captcha_($Form,$name,$options){
$options['type'] = "captcha";
$options['template'] = "/captcha/templates/captcha.tpl";
$Form->add($name,$options);
}
// ------------------------------------------------------------------------
...
/*
* Использование
*/
$CI->form->captcha($name,$options);
