Mostrar Páginas
Primero Crear las paginas
Dentro de Voyager en el Side Bar ir a “Pages”, modificar la pagina para que se llame “Nosotros” también cambiar el slug a “about”, y crear una pagina adicional con el botón “Crear”: Name: “Políticas y Privacidad” Slug: “policy” Meta Description: “Mauris id nulla a tortor viverra dictum eu vitae urna.” Meta Keywords: “prueba1” Status: “Active” No image
Desplegar las paginas en nuestro frontend
Crear un controlador:
lando php artisan make::controller PageController
Implementar el siguiente código. routes/web.php
use App\Http\Controllers\PageController;
Route::get('/about', [PageController::class, 'about'])->name('about');
Route::get('/policy', [PageController::class, 'policy'])->name('policy');
En app/Http/Controllers/PageController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use TCG\Voyager\Models\Page;
class PageController extends Controller
{
public function about(){
$page = Page::where('slug', 'about')->firstOrFail();
return view('pages.about', compact('page'));
}
public function policy(){
$page = Page::where('slug', 'policy')->firstOrFail();
return view('pages.policy', compact('page'));
}
}
En resources/views/pages/about.blade.php
<x-app-layout>
<div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
{{-- Titulo de la pagina --}}
<h1 class="text-4xl font-semibold text-center mb-4">
{{ $page->title }}
</h1>
{{-- Body --}}
<div class="mb-4">
{!! $page->body !!}
</div>
{{-- Imagen --}}
<figure>
<img src="{{ Voyager::image($page->image) }}" alt="" class="aspect-[4/3] object-cover">
</figure>
</div>
</x-app-layout>
En resources/views/pages/policy.blade.php
<x-app-layout>
<div class="max-w-4xl mx-auto px-4 sm:px-6 lg:px-8 py-12">
{{-- Titulo de la pagina --}}
<h1 class="text-4xl font-semibold text-center mb-4">
{{ $page->title }}
</h1>
{{-- Body --}}
<div class="mb-4">
{!! $page->body !!}
</div>
{{-- Si tenemos imagen mostramos la imagen --}}
@if ($page->image)
{{-- Imagen --}}
<figure>
<img src="{{ Voyager::image($page->image) }}" alt="" class="aspect-[4/3] object-cover">
</figure>
@endif
</div>
</x-app-layout>
Notas Finales
Lo interesante de todo esto es, que con Voyager podemos entrar y modificar el contenido de nuestras paginas, y lo mas interesante, que podemos darle acceso a un usuario con restricción de roles y permisos para que el cliente mismo pueda modificar sus contenidos!