Vollständiges, schlankes PHP/SQLite-CMS für IT-, KI- und Gaming-Inhalte: - Core: DB-Singleton, Auth mit Passwort-Hashing, Session-Cookies, CSRF-Schutz, Login-Rate-Limit, Bild-Upload mit serverseitiger Validierung - Admin: Dashboard, Artikel/Seiten-Verwaltung mit Quill WYSIWYG-Editor, Kategorien, Navigation (Drag & Drop), Medienbibliothek, Profil - Frontend: Responsive Dark-Theme, Artikel-Grid, Kategorie-Filter, Archiv, Paginierung, SEO-Meta-Tags - Sicherheit: Prepared Statements, HTML-Sanitizer, .htaccess-Schutz für sensible Verzeichnisse, PHP-Ausführungsschutz im Upload-Ordner - Installation: install.php erstellt DB-Schema und Admin-Account https://claude.ai/code/session_01Xsg4j2t4S9goMuWVpF3ezG
24 lines
874 B
PHP
24 lines
874 B
PHP
<article class="article-single">
|
|
<?php if (!empty($article['cover_image'])): ?>
|
|
<div class="article-cover">
|
|
<img src="<?= e($article['cover_image']) ?>" alt="<?= e($article['title']) ?>">
|
|
</div>
|
|
<?php endif; ?>
|
|
|
|
<header class="article-header">
|
|
<?php if (!empty($article['category_name'])): ?>
|
|
<a href="/kategorie/<?= e($article['category_slug']) ?>" class="article-category"><?= e($article['category_name']) ?></a>
|
|
<?php endif; ?>
|
|
<h1><?= e($article['title']) ?></h1>
|
|
<time class="article-date"><?= format_date($article['published_at'] ?? $article['created_at']) ?></time>
|
|
</header>
|
|
|
|
<div class="article-body prose">
|
|
<?= $article['body'] ?>
|
|
</div>
|
|
|
|
<footer class="article-footer">
|
|
<a href="/" class="back-link">← Zurück zur Übersicht</a>
|
|
</footer>
|
|
</article>
|