{{-- Open Graph / Twitter --}} {{-- Données structurées (Organization + WebSite) pour le référencement / rich results. NB : '@'.'context' (concaténé) pour ne pas déclencher la directive Blade @context. --}} @php // URLs canoniques des deux éditions (le même code sert les deux prods). $ppEditionUrl = ($isPlus ?? false) ? 'https://plus.permanence-partenaire.fr' : 'https://permanence-partenaire.fr'; $ppOtherUrl = ($isPlus ?? false) ? 'https://permanence-partenaire.fr' : 'https://plus.permanence-partenaire.fr'; @endphp {{-- Fil d'Ariane (BreadcrumbList) : hiérarchie de navigation pour les moteurs / rich results. --}} @php $ppBreadcrumb = [['name' => 'Accueil', 'url' => $ppEditionUrl]]; $ppPath = trim(request()->path(), '/'); if ($ppPath !== '' && $ppPath !== '/') { $ppLabel = ($seoBreadcrumb ?? null) ?: ucfirst(str_replace('-', ' ', explode('/', $ppPath)[0])); $ppBreadcrumb[] = ['name' => $ppLabel, 'url' => url()->current()]; } @endphp {{-- Article (auteur + date) : signale l'auteur et la fraîcheur du contenu aux IA/moteurs. --}} {{-- FAQ (IA) : questions/réponses réelles sur le service, éligibles aux rich results. --}} {{-- Polices Plus Jakarta Sans servies en local (plugin bunny) - aucune requête vers Google (RGPD) --}} @vite(['resources/css/app.css', 'resources/js/app.js']) @include('partials.header')
@yield('content')
@include('partials.footer') {{-- ══ ASSISTANT Permanence Partenaire (chatbot) ══ --}} @php $ppTel = '+33'.substr(preg_replace('/\D/','', $site['phones'][0]['num'] ?? '0184135615'), 1); $ppWa = '33'.substr(preg_replace('/\D/','', $site['gsm'] ?? '0647353370'), 1); $ppEmail = $site['email'] ?? 'contact@permanence-partenaire.fr'; @endphp