Ah bien, ahí tenés dos formas. Una es llamar a una clase vista propia del controlador, y otra llamar directamente a la vista. Yo uso esta segunda forma. Creás un array con las variables que va a usar y se las pasás.
Un ejemplo rápido.
Código PHP:
Ver original<?php
//Método del controlador, esto está dentro de la clase
//Va a mostrar una lista de alumnos
function alumnos()
{
//Este es el array que va a tener todas las variables
//que la vista necesite
//Trae una array con una lista de alumnos
//
//El nombre del índice "alumnos" es el nombre
//de la variable que va a recibir la plantilla
$datos['alumnos'] = $helper->traemeAlumnos();
//Le pasamos el título que va a tener el H1,
//solo para que quede más claro
$datos['titulo'] = 'Lista de alumnos';
//Llama a la vista
//
//Dentro del directorio de templates, tenemos el directorio
//alumnos, que tiene todos los templates
//de la sección alumnos. Y alumnos_listar.tpl es lo que
//vamos a mostrar ahora
View::load('alumnos/alumnos_listar.tpl', $datos);
}
//Ahora el método load de la clase View, resumido
static public function load($view, $vars = false)
{
$tpl = self::path_tpl.'/'.$view;
//Si trae el array con variables las cargamos
{
foreach ($vars as $k => $v)
{
//Esto es del objeto Smarty,
//Le asigna la variable $k (alumnos, titulo)
//con el valor $v (el array como los alumnos, y el titulo "Lista de alumnos")
self::plantilla->assign($k, $v);
}
}
//La muestra, también método de la clase smarty
self::plantilla->display($view);
}
Y ahora la vista, alumnos_listar.tpl, con la sintaxis de smarty
Código HTML:
Ver original<!DOCTYPE html>
{{foreach $alumnos as $a}}
{{/foreach}}
Así sería muy por arriba como funciona, a eso andá agregándole todas las necesidades que tengas. Cargale layouts y que en listar_alumnos.tpl solo quede el h1 y el ul, que te retorne el tpl en caso de necesitarlo, algún booleano para tener la opción de no usar plantillas si es que no querés en algún caso específico. De ahí en adelante desarrollá a gusto.
Capaz me falta alguna cosa porque lo puse de la forma más clara posible pero, se entiende.