martes, 23 de octubre de 2012

Añadir la extensión .html a algunas páginas de Codeigniter

En la configuración de codeigniter, en el archivo config.php, tenemos la opción de añadir una extensión a todas las páginas de nuestra aplicación de manera que la página

/pagina/de/contacto

se convierta en

/pagina/de/contacto.html

Pero esto tiene la pega de que se aplicará a cualquier URL de la aplicación y a lo mejor no queremos que esto sea así.

Si sólo queremos añadir el sufijo a algunas páginas, pero que siga funcionando el motor de codeigniter, podemos añadirlas en el archivo de routes.php. Por ejemplo podría quedar de la siguiente manera

$routes['/pagina/de/contacto.html'] = "nuestro_controlador/contacto"

También se pueden poner expresiones regulares del tipo


$route['^([^\/]*).html$''pages/view/$1'