Ziel: ein minimales, aber vollständig funktionierendes Theme
1. base.tpl
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>{$title} - {$cms_title}</title>
<link rel="stylesheet" href="{$base_url}/assets/css/style.css">
</head>
<body>
<header><a href="{$base_url}">{$cms_title}</a>{$position_nav}</header>
<main>{block content}{/block}</main>
<footer>© {$cms_title}</footer>
</body>
</html>
2. single.tpl (generischer Fallback)
{extends 'base.tpl'}
{block content}
<h1>{$title}</h1>
<div>{$body|raw}</div>
{/block}
3. home.tpl
{extends 'base.tpl'}
{block content}
<h1>{$cms_title}</h1>
{if $tagline}<p>{$tagline}</p>{/if}
{/block}
4. Registrieren und aktivieren
php -r "require 'core/Nexis/Autoload.php';
$db = new Nexis\Database(require 'config/settings.php')['database'];
(new Nexis\Template\ThemeRepository($db))->register('frontend', 'Mini', 'mini-theme');
(new Nexis\Template\ThemeRepository($db))->activate('frontend', 'mini-theme');"
Das reicht bereits für eine komplett funktionierende, wenn auch schlichte Website - alle vier mitgelieferten Themes bauen im Kern auf genau diesem Muster auf, nur eben mit deutlich mehr CSS und zusätzlichen typ-spezifischen Vorlagen.
Vollständiges Beispiel zum Herunterladen
Ein komplettes, real installierbares und getestetes Beispiel-Theme - zeigt zusätzlich zum oben Gezeigten die --nx-*-Variablen-Alias-Zuordnung, echte Navigation, Full-Site-Editing-Zonen und die korrekte Bootstrap-Icons-Einbindung.
ExampleTheme.zip herunterladen
Hinweis: Wer ein eigenes Theme im NexisCore-Marktplatz veröffentlichen möchte, kann optional eine market.md beilegen und den Schnellupload nutzen, statt das Formular von Hand auszufüllen. Mehr dazu: Schnellupload & market.md →