Estoy dando mis primeros pasos en el apasionante mundo de Codeigniter, y tropecé con una duda que no me deja continuar.
Averiguando sobre las buenas prácticas para hacer plantillas en Codeigniter llegue al siguiente código:
Voy a mostrar solo el controlador que es donde surge mi duda:
Código PHP:
function pagina_1($id){
$nombre = $this->model_categorias->nombre_cat($id);
//Acá cargo el método que me devuelve todas las categorias
$all_cat['filas'] = $this->model_categorias->obtener_todas();
$datos_plantilla['encabezado'] = $this->load->view('site/includes/encabezado', $all_cat, true);
$datos_plantilla['pie'] = $this->load->view('site/includes/pie', $all_cat , true);
$datos_plantilla['title'] = 'Título de la página';
$datos_plantilla['cuerpo'] = 'Contenido del cuerpo';
$this->load->view('site/plantilla', $datos_plantilla);
}
Que pasa si quiero agregarle más datos dinámicos al pie o encabezado que provengan de otro Model? tendría que modificar todas los métodos donde cargo páginas? No hay forma de incluir en el método "pagina_1" una llamada a otro método que se encuentre en otro Controlador por ej.? tal vez un método que me pase el encabezado listo con los datos ya cargados? no se si se entiende? :P
Tal vez exista algún recurso que yo no conozco todavía para resolver ese tipo de cosas. Leí algo sobre los Hooks pero no entendí muy bien si era para este tipo de cosas.
Alguien que tenga una visión más amplia del framework podría darme una mano .
Desde ya gracias!