@inject('renderer', 'App\Domains\Encyclopedia\Services\ContentRenderer') @php // Maillage interne automatique : les notions citées pointent vers leur fiche de glossaire. $renderer->linkGlossaryTerms(true); $faq = collect($entry->faq ?? [])->filter(fn ($q) => ! empty($q['q']) && ! empty($q['a']))->values(); // Temps de lecture indicatif par niveau (~180 mots/minute), affiché en regard // de chaque niveau pour que le lecteur choisisse en connaissance de cause. $texteDeBlocs = function ($blocs) { $texte = ''; foreach ((array) $blocs as $bloc) { foreach ($bloc as $valeur) { $texte .= ' '.(is_array($valeur) ? implode(' ', array_map('strval', $valeur)) : (string) $valeur); } } return $texte; }; $version = $entry->publishedVersion; $minutesParNiveau = []; foreach (['debutant' => 'content_beginner', 'standard' => 'content_standard', 'expert' => 'content_expert'] as $cle => $champ) { $mots = str_word_count(strip_tags($texteDeBlocs($version?->{$champ} ?? []))); $minutesParNiveau[$cle] = max(1, (int) ceil($mots / 180)); } @endphp @php $jsonldGraph = \App\Support\StructuredData::graph( \App\Support\StructuredData::article( $entry->title, $entry->summary, route('encyclopedie.show', $entry), $entry->created_at, $version?->verified_at ?? $entry->updated_at, ), \App\Support\StructuredData::breadcrumb([ 'Encyclopédie' => route('encyclopedie.index'), $entry->title => route('encyclopedie.show', $entry), ]), \App\Support\StructuredData::faq($faq), ); @endphp
{{-- Colonne contenu --}}

{{ $entry->title }}

{{ $entry->summary }}

Validé @if($version?->verified_at) Vérifié le {{ $version->verified_at->format('d/m/Y') }} @endif
{{-- Sélecteur de niveau compact (mobile uniquement, la sidebar le porte sur desktop) --}}
@foreach (['debutant' => 'Débutant', 'standard' => 'Standard', 'expert' => 'Expert'] as $key => $label) {{ $label }} ≈ {{ $minutesParNiveau[$key] }} min @endforeach
@if ($faq->isNotEmpty())

Questions fréquentes

@foreach ($faq as $item)
{{ $item['q'] }}

{{ $renderer->html($item['a']) }}

@endforeach
@endif {{-- Pied de fiche : auteur et date visibles (crédibilité, citabilité IA). --}}
Relecteur : {{ $version?->reviewer?->name ?? '-' }}
@if ($entry->created_at)
Publié le :
@endif @php $maj = $version?->verified_at ?? $entry->updated_at; @endphp @if ($maj)
Mis à jour le :
@endif

Contenu de démonstration destiné à illustrer la structure éditoriale. Toute information doit être vérifiée avant usage.

{{-- Colonne latérale --}}