/
mnt
/
www
/
animaux-de-jardin.fr
/
Upload File
HOME
<?php /** * PAGE 404 — Page introuvable * Template partagé utilisant le header/footer du site. * Traductions inline pour ne pas modifier lang.php. */ if (!isset($site_name)) require __DIR__ . '/config.php'; require_once __DIR__ . '/parts/lang.php'; $t404 = [ 'FR' => ['title' => 'Page introuvable', 'message' => 'La page que vous recherchez n\'existe pas ou a été déplacée.', 'back' => 'Retour à l\'accueil', 'explore' => 'Explorer nos rubriques'], 'UK' => ['title' => 'Page not found', 'message' => 'The page you are looking for does not exist or has been moved.', 'back' => 'Back to home', 'explore' => 'Explore our categories'], 'ES' => ['title' => 'Página no encontrada', 'message' => 'La página que busca no existe o ha sido trasladada.', 'back' => 'Volver al inicio', 'explore' => 'Explorar nuestras categorías'], 'IT' => ['title' => 'Pagina non trovata', 'message' => 'La pagina che stai cercando non esiste o è stata spostata.', 'back' => 'Torna alla home', 'explore' => 'Esplora le nostre categorie'], 'DE' => ['title' => 'Seite nicht gefunden', 'message' => 'Die gesuchte Seite existiert nicht oder wurde verschoben.', 'back' => 'Zurück zur Startseite', 'explore' => 'Unsere Kategorien entdecken'], 'NL' => ['title' => 'Pagina niet gevonden', 'message' => 'De pagina die u zoekt bestaat niet of is verplaatst.', 'back' => 'Terug naar home', 'explore' => 'Onze categorieën bekijken'], 'PT' => ['title' => 'Página não encontrada', 'message' => 'A página que procura não existe ou foi movida.', 'back' => 'Voltar ao início', 'explore' => 'Explorar as nossas categorias'], ]; $t = $t404[$site_lang ?? 'FR'] ?? $t404['FR']; $page_title = $t['title'] . ' — ' . $site_name; $page_description = $t['message']; http_response_code(404); include __DIR__ . '/parts/header.php'; ?> <style> .page-404{display:flex;align-items:center;justify-content:center;min-height:60vh;text-align:center;padding:3rem 1.5rem} .container-404{max-width:600px} .error-code{font-size:clamp(6rem,15vw,10rem);font-weight:800;line-height:1;color:var(--color-primary,#2563eb);opacity:.15;margin-bottom:-1rem} .page-404 h1{font-size:clamp(1.5rem,4vw,2rem);margin-bottom:1rem;color:var(--color-text,#1a1a2e)} .error-message{font-size:1.1rem;color:var(--color-text-light,#64748b);margin-bottom:2rem;line-height:1.6} .btn-404{display:inline-block;padding:.8rem 2rem;border-radius:.5rem;text-decoration:none;font-weight:600;transition:all .2s;background:var(--color-primary,#2563eb);color:#fff} .btn-404:hover{opacity:.85;transform:translateY(-1px)} .categories-404{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--color-border,#e2e8f0)} .explore-label{font-size:.9rem;color:var(--color-text-light,#64748b);margin-bottom:1rem} .categories-list-404{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem} .cat-link-404{padding:.4rem 1rem;border-radius:2rem;font-size:.85rem;text-decoration:none;background:var(--color-surface,#f8fafc);color:var(--color-text,#1a1a2e);border:1px solid var(--color-border,#e2e8f0);transition:all .2s} .cat-link-404:hover{background:var(--color-primary,#2563eb);color:#fff;border-color:var(--color-primary,#2563eb)} </style> <main class="page-404"> <div class="container-404"> <div class="error-code">404</div> <h1><?= htmlspecialchars($t['title']) ?></h1> <p class="error-message"><?= htmlspecialchars($t['message']) ?></p> <a href="/" class="btn-404"><?= htmlspecialchars($t['back']) ?></a> <?php if (!empty($categories)): ?> <div class="categories-404"> <p class="explore-label"><?= htmlspecialchars($t['explore']) ?></p> <div class="categories-list-404"> <?php foreach ($categories as $slug => $cat): ?> <a href="/<?= htmlspecialchars($slug) ?>/" class="cat-link-404"><?= htmlspecialchars($cat['name']) ?></a> <?php endforeach; ?> </div> </div> <?php endif; ?> </div> </main> <?php include __DIR__ . '/parts/footer.php'; ?>