Para solucionar estos problemas tenemos la figura de la vista anidada, que no es más que incorporar una vista dentro de otra, con lo cual podemos realizar solo una vez un footer y luego incorporarlo en todas las vistas que lo requieran, con ello podremos lograr disminuir una parte del trabajo repetitivo que se pudiera dar..
Vistas anidadas
Para poder crear vistas anidadas debemos hacer una pequeña estructura de carpetas o directorios en los cuales vamos a almacenar los diferentes recursos, para este ejemplo en la carpeta app/views vamos a generar una nueva carpeta llamada common ya que es donde irán las vistas comunes a todas las otras vistas.
Luego dentro de nuestro directorio que acabamos de crear vamos a generar el archivo header.php, que va a fungir de cabecera para nuestras vistas y que debe tener el contenido visto en la siguiente imagen:
Ahora vamos a repetir el procedimiento pero vamos a crear el archivo footer.php y como en el caso anterior vamos a colocar lo siguiente como su contenido:
Incorporar las vistas anidadas
Una vez que ya tenemos las vistas comunes, vamos ahora a hacer el procedimiento para incorporarlas dentro de nuestras vistas básicas.
Vamos a crear una vista básica, para ello en el directorio app/views/ vamos a crear el directorio misvistas y dentro de este vamos a crear un archivo llamado home.php, el cual va a contener el siguiente código:
Ahora debemos crear la ruta que nos permita acceder a nuestra vista y además dentro de esta es que vamos a indicarle que debe tomar las vistas que generamos en los pasos anteriores como vistas anidadas, para ello haremos uso del método nest() dentro del cual pasaremos las vistas que queramos anidar:
Ahora con esto al navegar en nuestra aplicación a la URL de nuestra vista Home debemos ver como se obtiene el contenido de la vista, con ello podremos crear todas las vistas diferentes e incluir esas vistas comunes, con ello logramos el resultado de no repetir trabajo.
También podemos pasar datos adicionales a la vista con este mismo método nest(), construyendo un array de datos y anidándolo dentro de la vista que estemos generando, con ello podemos generar una vista común de estructura que reciba datos y así solo cambiar los datos que pueda recibir, disminuyendo un poco más el trabajo que se debe repetir:
Con esto finalizamos este tutorial, hemos aprendido a anidar vistas, con lo cual podremos trabajar con plantillas básicas y así no tener que repetir código estático o funcionalidades primarias de nuestra aplicación.