Zum Hauptinhalt springen

Demos und Styleguide

Creuva bringt vier Demos mit. Jede wird als eigener Startpunkt importiert – im Backend unter Layout › Creuva › Einrichten (Auswahl „Demo-Website importieren“) oder auf der Konsole. In einer bestehenden Installation legst du die Demo mit einer eigenen Domain (--dns) oder Sprache (--language) daneben.

DemoBefehlFürLive
Standard / Creativecreuva:install --demoAgenturen, Freelancer, kleine UnternehmenAnsehen
Unternehmencreuva:install --demo=unternehmenMittelstand, Industrie, HandwerkAnsehen
Portfolio / Studiocreuva:install --demo=portfolioFotografen, Architekten, KreativstudiosAnsehen
Sportvereincreuva:install --demo=sportvereinFußball- und Sportvereine, VerbändeAnsehen

Alle Demos verwenden nur Core-Elemente, Creuva-Elemente und Templatevarianten und laufen deshalb unter Contao 5.7 und 6 gleich. Die Elemente sind demounabhängig: was eine Demo zeigt, kannst du auf jeder Creuva-Website nutzen.

Anmerkung

Texte, Bilder und Medien der Demos dienen nur der Vorschau und dürfen nicht für eigene Websites verwendet werden. Das Kontaktformular verschickt keine E-Mails – ergänze den Versand im Formulargenerator.

Standard / Creative

  • Seiten: Startseite, Leistungen (Webdesign, Entwicklung, Beratung), Projekte mit sechs Projektseiten, Über uns mit Team, Preise, News & Wissen mit FAQ und Downloads, Kontakt mit Danke-Seite, Impressum, Datenschutz, Zugänglichkeitserklärung, Sitemap, Suche und eine 404-Seite
  • Module: Hauptnavigation, Header mit CTA und Suche, Footer mit vier Spalten und Social-Media-Links, News-Liste und -Leser, Sitemap, Suchmaschine
  • Bildgrößen für jeden Platz im Layout (Logo, Hero, Karte, Bild & Text, Breit, Team, Avatar, News, Galerie) mit mehreren Breiten, WebP und verzögertem Laden
  • News-Archiv mit drei Beiträgen (nur mit installiertem News-Bundle)
  • Dateien unter files/creuva-demo/standard/ (Illustrationen, Icons, PDFs) mit Alt-Texten
  • Favicon im Startpunkt sowie der Style-Switcher zum Ausprobieren der Farbschemen

Unternehmen

Klassische Firmenwebsite („Kessler Metalltechnik GmbH“, Light, Farbschema Ozean, eckig):

  • Seiten: Startseite mit Kennzahlen, Leistungen und Branchen; Leistungen mit Maschinenpark; Branchenlösungen; Referenzen; Unternehmen mit Geschichte, Zertifikaten und Standorten; Karriere mit Stellenangeboten und Online-Bewerbung (Datei-Upload); Download-Center; Aktuelles; Kontakt mit Ansprechpartnern
  • Stellenangebote sind Nachrichten im Archiv „Stellenangebote“ mit der Listenvorlage news_creuva_job (siehe News)
  • Prozess-Schritte als Templatevariante der Beschreibungsliste

Portfolio / Studio

Für Fotografen, Architekten und Kreativstudios („Studio Lichtung“, Typografie Editorial, Farbschema Terracotta, kleine Ecken):

  • Seiten: Startseite mit Vollbild-Hero, Arbeiten mit sechs Projektseiten, Bildarchiv (Masonry-Galerie mit Lightbox), Studio mit Team, Leistungen mit Preisen und FAQ, Journal, Kontakt
  • Projektseiten: Vollbild-Hero, Projektdaten (Fakten), Text, je eine andere Galerie-Anordnung oder ein Slider mit Thumbnails und ein Link zum nächsten Projekt
  • Bildkacheln (creuva_tile), Logoleiste und die Raster-Klasse „Versetzt“ (u-grid-offset)

Sportverein

Für Fußball- und Sportvereine („TSV Rotenbach 1921“, Light, Farbschema Rot, mittlere Ecken, Wappen als Logo):

  • Seiten: Startseite mit nächstem Spiel und letztem Ergebnis, Mannschaften mit Trainingszeiten und Tabelle, Spielplan, Verein mit Vorstand und Sportpark, News, Sponsoren mit Paketen, Mitglied werden mit Online-Antrag und Beitrittserklärung (PDF)
  • Spielplan und Ergebnisse sind Termine im Kalender „Spielplan“. Ihre Daten liegen relativ zum Tag des Imports, die nächsten Spiele sind also immer in der Zukunft.
  • Inhaltselement „Spielpaarung“ und Tabellen-Klasse „Liga-Tabelle“ (u-table-league)

Styleguide

Der Styleguide zeigt alle Elemente, Templatevarianten, CSS-Klassen und Module des Themes auf einer Seite: Farben, Typografie, Buttons, Listen, Tabellen, Medien, Kennzahlen, Akkordeon, Hintergründe, Animationen, alle Formularfelder, Breadcrumb und News-Liste. Er ist unabhängig von den Demos und lässt sich jeder Creuva-Website hinzufügen – unter Layout › Creuva › Styleguide oder auf der Konsole:

vendor/bin/contao-console creuva:styleguide --root=1
vendor/bin/contao-console creuva:styleguide --root=1 --replace   # nach einem Theme-Update neu anlegen
  • Seite „Styleguide“ (Alias styleguide) am Ende der Website, nicht in der Navigation, nicht im Suchindex und mit noindex,nofollow
  • eigene Module, ein Formular und ein News-Archiv mit dem Präfix „Styleguide – “
  • Dateien unter files/creuva-demo/styleguide/

Die Demos installieren den Styleguide gleich mit.

Zugänglichkeitserklärung

Jede Demo bringt die Seite zugaenglichkeitserklaerung mit, verlinkt im Footer. Jeder Abschnitt ist ein eigenes Text-Element; Abschnitte, die nicht auf jede Website passen (PDF-Dokumente, Videos, Karten, Drittanbieter, BFSG, Schlichtung …), sind ausgeblendet und lassen sich über das Augen-Symbol einblenden. --with-pages legt die Seite mit einem Platzhalter an.

Anmerkung

Der Text ist ein Muster. Das Theme allein macht eine Website nicht barrierefrei; Stand und Angaben müssen zur jeweiligen Website passen.

09.11.2026 Spare Zeit bei allen Webprojekten mit pdir+

Unterabschnitte von Demos und Styleguide

Eigene Demo und Export

Eine Website lässt sich als Vorlage exportieren und in eine andere Installation importieren – z. B. als Startpaket für Kundenprojekte. Die Vorlage ist ein Ordner mit einer demo.yaml und den verwendeten Dateien, derselbe Aufbau wie bei den mitgelieferten Demos.

Website exportieren

Im Backend unter Layout › Creuva › Website exportieren (nur für Administratoren) wählst du den Startpunkt und optional Titel und Ordnernamen. Darunter stehen alle Exporte mit Datum, Anzahl der Dateien und Größe; sie lassen sich als ZIP herunterladen und löschen. Auf der Konsole:

vendor/bin/contao-console creuva:export
vendor/bin/contao-console creuva:export 1 --name=kunde-x --title="Kunde X"
var/exports/kunde-x/
├── demo.yaml       Seiten, Inhalte, Module, Formulare, News, Termine, Bildgrößen, Design
└── files/          die verwendeten Dateien

Exportiert werden:

  • der Seitenbaum mit Artikeln und Inhaltselementen, die darin verwendeten Module, Formulare, News und Termine
  • die Bildgrößen des Themes und alle in Inhalten verwendeten Größen
  • alle referenzierten Dateien mit Alt-Texten
  • Header, Logos, Marke und Footer-Spalten aus den Creuva-Modulen
  • Farbschema, Farbmodus, Typografie, Eckenradius und Logohöhe, außerdem Favicon und Vorschaubild des Startpunkts

Nicht exportiert werden eigene Farben des Layouts, Empfänger-Adressen von Formularen, Tabellen anderer Erweiterungen und die Styleguide-Seite (sie wird beim Import neu angelegt). Insert-Tags mit IDs wie {{insert_module::3}} und die Elemente „Inhaltselement“ und „Artikel“ (Verweise) lassen sich nicht übertragen; der Export listet sie als Warnung auf. Seiten-Links wie {{link_url::12}} werden auf Aliase umgestellt.

Tipp

Für den Umzug einer kompletten Website ist ein Datenbank-Backup der bessere Weg. Der Export ist für Vorlagen gedacht.

Eigene Demo importieren

  1. ZIP entpacken und den Ordner nach files/<name> kopieren. Den Ordner nicht öffentlich schalten, sonst ist die demo.yaml im Web abrufbar.
  2. Unter Layout › Creuva › Einrichten bei „Oder eigener Ordner“ files/<name> eintragen, oder:
vendor/bin/contao-console creuva:install --demo=files/kunde-x

Die Dateien werden nach files/creuva-demo/local-<ordnername>/ kopiert, der Quellordner bleibt unverändert. Mit filesFolder: inhalte in der demo.yaml landen sie stattdessen in files/inhalte/; dieser Ordner wird von creuva:reset nicht gelöscht.

Aufbau der demo.yaml

Die Definition ist YAML. Verweise schreibst du als page:<alias>, module:<key>, image_size:<key>, news_archive:<key>, calendar:<key> oder file:<pfad>. Ein Beispiel mit den wichtigsten Bereichen:

design:
  scheme: green       # Farbschema, Farbmodus, Typografie und Eckenradius des Seitenlayouts
  variant: light
  typography: modern
  radius: large
  logoHeight: 4rem
  stylesheets: ['files/design/custom.css']   # wird angelegt, falls nicht vorhanden
header:
  logo: file:design/logo.png
  search: suche       # Alias der Suchergebnisseite
brand:
  logo: file:design/logo-hell.png
bottom: ['impressum', 'datenschutz', 'sitemap']   # Links neben dem Copyright
imageSizes:
  card:
    name: Karte (4:3)
    width: 800
    height: 600
    resizeMode: crop
    densities: 400w, 600w, 800w
    sizes: '(min-width: 80rem) 384px, (min-width: 44rem) 31vw, calc(100vw - 2rem)'
    lazyLoading: true
pages:
  - title: Start
    articles:
      - elements:
          - { type: 'image', singleSRC: 'file:bilder/foto.jpg', size: 'image_size:card' }
modules:
  newslist: { name: 'News', type: 'newslist', news_archives: ['news_archive:blog'], imgSize: 'image_size:card' }
layout:
  prefooter: [partner]   # zusätzliche Module in Bereichen des Seitenlayouts
styleguide: true

Termine definierst du unter events:; das Datum ist ein strtotime()-Ausdruck ("2026-12-05", "5 December"), relative Angaben wie 'date:next saturday 15:00' sind ebenfalls möglich. Die mitgelieferten Demos im Ordner demo/ des Bundles sind die beste Vorlage.

Bildgrößen der Demos

Jede Bildgröße ist für einen Platz im Layout gedacht, damit der Browser nicht mehr lädt als nötig:

KeyNameFür
logoLogoLogo in Header und Footer
heroHeroBild im Hero-Element
coverVollbild (16:9)Hero über die volle Breite
cardKarte (4:3)Karten in drei oder vier Spalten, Slider mit mehreren Karten
mediaBild & Text (4:3)Templatevariante „Bild & Text“, Karten in zwei Spalten
wideBreitBild über die Inhaltsbreite
tile-portrait, tile-landscapeKachel hoch/querBildkacheln
sliderSlider (3:2)Bilder im Slider über die Inhaltsbreite
team, avatarTeam, AvatarPersonenbild und Kundenstimme
news, news-detailNews-Teaser, News-DetailNewsliste und Kopf des Newslesers
galleryGalerie (responsiv)Galerien, sizes setzt das Galerie-Template pro Bild
09.11.2026 Spare Zeit bei allen Webprojekten mit pdir+

Inhalte zurücksetzen

Der Demo-Import überschreibt keine bestehenden Inhalte. Um eine Demo neu zu importieren oder eine Installation in den Zustand nach der Neuinstallation zu versetzen, gibt es zwei Wege.

Warnung

Beide Befehle löschen Inhalte. Vorher wird automatisch ein Datenbank-Backup angelegt – schalte es nur ab, wenn du sicher bist.

Alle Inhalte löschen (creuva:reset)

# Alle Inhalte löschen (mit Rückfrage und Datenbank-Backup)
vendor/bin/contao-console creuva:reset

# Inhalte löschen und die Demo neu importieren
vendor/bin/contao-console creuva:install --demo --reset

Im Backend entspricht das der Option „Vorher alle Inhalte löschen“ unter Layout › Creuva › Einrichten.

  • Geleert werden alle Contao-Tabellen: Seitenstruktur, Artikel, Inhaltselemente, Themes, Module, Layouts, Formulare, News, Versionen, Suchindex usw. Die IDs beginnen wieder bei 1.
  • Erhalten bleiben Backend-Benutzer und -Gruppen, Mitglieder und Mitgliedergruppen und die Dateiverwaltung.
  • Von den Dateien wird nur der Demo-Ordner files/creuva-demo gelöscht.
  • Das Backup liegt unter var/backups/creuva-reset__<Zeitstempel>.sql.gz; zurückspielen mit contao:backup:restore <Dateiname>.
  • Ohne Rückfrage (z. B. in Skripten): --force, ohne Backup: --no-backup.

Eine Website einer Multisite ersetzen (--replace)

--reset löscht alle Websites. Laufen mehrere Websites in einer Installation, ersetzt --replace nur die Website, die der Import neu anlegen würde:

vendor/bin/contao-console creuva:install --demo=files/meine-demo \
    --site-title="Meine Firma" --dns=example.org --theme-name="Meine Firma" --replace

Gelöscht werden die Startpunkte mit derselben Domain und Sprache samt Unterseiten und Inhalten, das Theme mit dem Namen aus --theme-name und die Themes, deren Layouts diese Website nutzt, sowie Formulare, News-Archive und Kalender – aber nur, wenn keine andere Website sie verwendet.

  • Wird das Theme auch von einer anderen Website genutzt, bricht der Befehl ab, ohne etwas zu löschen.
  • Vor dem Löschen zeigt der Befehl alle betroffenen Datensätze und fragt nach.
  • Dateien bleiben erhalten; der Import überschreibt die Demo-Dateien, ihre UUIDs bleiben gleich.
  • Gibt es noch keine passende Website, legt --replace sie einfach neu an.
  • Nicht kombinierbar mit --reset und --root; erfordert --demo oder --with-pages.

Baue danach den Suchindex mit contao:crawl neu auf.