MyHomeCollection/app/Http/Controllers/PublicController.php

40 lines
1.1 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Home;
use Artesaos\SEOTools\Traits\SEOTools as SEOToolsTrait;
use DateTime;
class PublicController extends Controller
{
use SEOToolsTrait;
public function show($slug)
{
$home = Home::where('slug', $slug)->firstOrFail();
$this->seo()
->setTitle($home->title)
->setDescription($home->excerpt())
->addImages(array_map(static function ($picture) {
return asset($picture);
}, $home->pictures));
$this->seo()
->opengraph()
->addProperty('article:published_time', $home->created_at->format(DateTime::ATOM))
->addProperty('article:author', 'Shikiryu');
return view('public.view', ['home' => $home]);
}
public function list()
{
$homes = Home::where('slug', '!=', null)->paginate(12);
$this->seo()
->setTitle('Liste des maisons rêvées')
->setDescription('La sélection');
return view('public.list', ['homes' => $homes]);
}
}