Librería de CodeIgniter 3 para utilizar Twig como motor de plantillas.
CI Twig necesita PHP >= 7.0 y CodeIgniter 3.x para poder ser ejecutado.
Instale Composer en su equipo y luego ejecute el comando composer require co-developers/ci-twig
dentro de la raíz de su proyecto en Codeigniter.
Para cargar la librería automaticamente, abra el archivo application/config/autoload.php
y agregue el string 'twig'
al array $autoload['libraries']
.
Para poder utilizar las funciones form_open()
, form_close()
, form_error()
, set_value()
, set_select()
, set_checkbox()
, set_radio()
y validation_errors()
del Form Helper, abra el archivo application/config/autoload.php
y agregue al array $autoload['helpers']
el string 'form'
.
Para poder utilizar las funciones site_url()
, base_url()
, current_url()
y uri_string()
del URL Helper, abra el archivo application/config/autoload.php
y agregue al array $autoload['helpers']
el string 'url'
.
- Para comenzar a utilizar CI Twig en cualquier método de un controlador debe agregar la librería al array
$autoload['libraries']
o cargarla de forma manual en el constructor del controlador o en una acción del mismo justo antes de utilizarla. Para cargar la librería de forma manual se debe ejecutar$this->load->library('twig')
(se recomienda utilizar la carga automática). - Para enviar una vista al navegador se debe ejecutar
$this->twig->display('archivo', $params)
donde el parametro'archivo'
es un archivo con extensiontwig
ubicado en la carpetaapplication/views
y el parametro$params
es un array con pares'clave' => valor
dondeclave
es el nombre de la variable disponible a utilizar en el archivo twig yvalor
es el valor de dicha variable. - Para obtener el resultado de una vista en twig y guardarlo en una variable y hacer con ello lo que deseen se debe ejecutar el método
$this->twig->render('archivo', $params)
. Los parámetros son los mismos que los del métododisplay()
.
- Para agregar funciones a Twig y que estén disponibles para utilizar en todos los templates se debe ejecutar
$this->twig->addFunction($name, $function)
donde el parámetro$name
es el nombre de la función en Twig, y$function
puede ser el nombre de una función nativa de PHP, el de un helper de CodeIgniter cargado previamente, o una función anónima. - Para agregar una variable global en Twig se debe ejecutar
$this->twig->addGlobal($name, $value)
donde$name
es el nombre de la variable en Twig y$value
es el valor de dicha variable. - Se recomienda extender Twig a través del hook
post_controller_constructor
para que las funciones y/o variables agregadas estén disponibles en todos los métodos de los controladores de su aplicación. Si desea extender Twig en un controlador específico, se recomienda hacerlo en el constructor de dicho controlador. Recuerde que para extender Twig a través del hook debe configurar la carga automática de la libreria.
Ci Twig utiliza la variable ENVIRONMENT
de CodeIgniter para configurar Twig de la forma más óptima dependiendo del entorno en que se esté ejecutando.