Files
dasposchi-de/templates/article.php
Claude 3c97192386 Initiales CMS: Deutschsprachiges Blog-System mit Admin-Bereich
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
2026-04-05 20:59:52 +00:00

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">&larr; Zurück zur Übersicht</a>
</footer>
</article>