Ejercicio de programación con Laravel: Reto Blade Templates

Proyecto
Práctica
1h 30m

Desarrolla un blog con Laravel usando Blade templates, layouts, componentes y directivas para gestionar vistas y datos dinámicos.

  1. Crea un controlador llamado BlogController con los métodos index, show y contact. El método index debe pasar una colección de artículos a la vista, show debe mostrar un artículo específico por ID, y contact debe renderizar un formulario de contacto.

  2. Define las rutas en routes/web.php para acceder a los métodos del controlador:

    • /blog para el listado de artículos (método index)
    • /blog/{id} para ver un artículo específico (método show)
    • /contact para la página de contacto (método contact)
  3. Crea un layout principal en resources/views/layouts/app.blade.php que incluya:

    • Una estructura HTML básica
    • Un encabezado con el nombre del blog
    • Una barra de navegación con enlaces a las páginas
    • Un contenedor principal con @yield('content')
    • Un pie de página con información de copyright
  4. Crea vistas parciales en resources/views/partials/ para:

    • header.blade.php: El encabezado del sitio
    • nav.blade.php: La barra de navegación
    • footer.blade.php: El pie de página
  5. Desarrolla la vista resources/views/blog/index.blade.php que extienda del layout principal y muestre la lista de artículos. Utiliza la directiva @forelse para mostrar los artículos o un mensaje cuando no hay artículos disponibles.

  6. Crea la vista resources/views/blog/show.blade.php para mostrar los detalles de un artículo individual, incluyendo título, contenido, autor y fecha de publicación. Utiliza la directiva @if para mostrar información adicional solo cuando esté disponible.

  7. Implementa la vista resources/views/blog/contact.blade.php con un formulario de contacto simple (no es necesario que funcione el envío).

  8. Crea un componente Blade para mostrar artículos destacados en resources/views/components/featured-post.blade.php. Este componente debe recibir un artículo como parámetro y mostrar su información en un formato destacado.

  9. Modifica el controlador para que algunos artículos estén marcados como destacados y utiliza el componente en la vista index para mostrarlos de forma especial.

  10. Añade la funcionalidad para formatear las fechas de publicación en formato legible (ej: "Publicado el 15 de marzo de 2023") utilizando las capacidades de Blade.

Empezar ejercicio de programación

Más ejercicios de programación con Laravel

Evalúa tus conocimientos en Laravel con más ejercicios de programación de tipo Test, Puzzle, Código y Proyecto con VSCode.

Tecnologías de este ejercicio de programación

Entornos de desarrollo para este ejercicio

Image

Visual Studio Code

Image

GitHub