Terug naar hoofdinhoud
Cassiopeia: de complete gids voor Joomla's standaard template
Op deze pagina
# Topics

Cassiopeia: de complete gids voor Joomla's standaard template

03 augustus 2026

Elke Joomla-site vanaf versie 4 begint met hetzelfde uiterlijk: Cassiopeia, de standaard frontend-template. Veel websitebouwers beschouwen deze als een tijdelijke oplossing die zo snel mogelijk vervangen moet worden. Dat is een gemiste kans: Cassiopeia is een snelle, toegankelijke, op Bootstrap 5 gebaseerde template die op zichzelf al een professionele website kan vormen, als je de opties, de posities en de juiste manier om deze aan te passen kent.

Dit artikel legt het Cassiopeia-template van voor tot achter uit. Het behandelt de basis en de template-opties voor eigenaren, de moduleposities, menu's en de aanpas-werkwijze voor sitebouwers, en de technische details - asset-definities, child templates, de anatomie van index.php - voor ontwikkelaars. Het bouwt voort op de Focus On-artikelen over Joomla-templates en template overrides; hier gaat alles specifiek over Cassiopeia zelf.

Cassiopeia is geen demo template. Het is een bewust eenvoudig uitgangspunt dat iedereen beloont die er eens goed naar kijkt.

Het doel is eenvoudig: je laten bepalen wat Cassiopeia voor jouw site kan doen, en het laten aanpassen zonder updates te breken.

1. De basis

1.1 Wat is Cassiopeia?

Cassiopeia is het standaard site-template dat sinds Joomla 4 met elke Joomla-installatie meekomt (de backend gebruikt een eigen template, Atum). Het woont in templates/cassiopeia/ met zijn assets in media/templates/site/cassiopeia/, en het is gebouwd op Bootstrap 5, met toegankelijkheid en prestaties als expliciete ontwerpdoelen: semantische landmarks, toetsenbordvriendelijke navigatie, en standaard geen externe font- of scriptverzoeken.

1.2 De filosofie: een leeg canvas

Cassiopeia ziet er bewust onspectaculair uit. Het probeert geen pagebuilder-thema te zijn; het is een leeg, standaardconform canvas dat jij vormgeeft met template-opties, moduleposities, CSS en overrides. Die soberheid is een feature: er is weinig om tegen te vechten, en alles wat Joomla kan - elke component-view, elke module - rendert er standaard correct in.

1.3 Wanneer Cassiopeia genoeg is (en wanneer niet)

  • Genoeg: contentsites, blogs, documentatie, organisatie- en bedrijfssites waar heldere typografie en structuur belangrijker zijn dan visueel vuurwerk. Met een child template en wat CSS draagt Cassiopeia die prima.
  • Overweeg iets anders: zwaar vormgegeven marketingsites die met slepen-en-neerzetten gebouwd worden, of projecten die gestandaardiseerd zijn op een template-framework. Zelfs dan is wat je van Cassiopeia leert overdraagbaar: posities, stijlen, overrides en asset-afhandeling werken overal hetzelfde.

In mijn eigen klantprojecten gebruik ik vaak YOOtheme Pro, een commerciele template met een visuele drag-and-drop-builder, wanneer het ontwerp verder gaat dan wat makkelijk met Cassiopeia zou kunnen. Met de builder stel je complete pagina layouts samen zonder PHP-overrides, de functie Dynamic Content haalt Joomla-artikelen en custom fields rechtstreeks in elke layout, en kant-en-klare layouts transformeren een lege site snel naar een afgerond ontwerp. Na de oplevering onderhouden redacteuren de pagina's zelf, zonder voor elke wijziging een ontwikkelaar nodig te hebben. De nadelen: een jaarlijkse licentie, wat vendor lock-in aan de markup van de builder, en iets zwaardere pagina's dan een handmatig gebouwde Cassiopeia child template - voor een slanke contentsite blijft de gratis standaard moeilijk te verslaan.

Naar boven

2. De template-opties

2.1 Waar in te stellen

Open Systeem → Site-templatestijlen → Cassiopeia - Default. De optietabbladen configureren de template-stijl - en omdat stijlen gedupliceerd en per menu-item toegewezen kunnen worden, kan elke optie hier per deel van je site verschillen (sectie 7).

2.2 Brand, logo en titel

De schakelaar brand toont of verbergt het brand-gebied in de header. Staat hij aan, dan kiest Cassiopeia het logo in een vaste volgorde:

  1. Logo (logoFile): een geuploade afbeelding wint.
  2. Titel (siteTitle): anders rendert deze tekst als brand.
  3. Anders wordt de sitenaam uit de Algemene configuratie gebruikt.

De Tagline (siteDescription) rendert onder de brand. Praktische tip: een SVG-logo blijft scherp op elk formaat en laadt klein.

2.3 Layout, lettertypen en kleuren

OptieWat het doet
fluidContainer Statisch houdt de layout op een vaste maximale breedte; Vloeiend rekt hem uit over de volledige viewport.
stickyHeader Houdt de header zichtbaar tijdens het scrollen.
backTop Voegt een terug-naar-boven-knop toe.
useFontScheme Keuze van het lettertypeschema; het meegeleverde schema laadt Roboto lokaal - geen extern font-CDN, goed voor privacy en snelheid.
colorName Kleurenschema: colors_standard of colors_alternative, elk een klein CSS-bestand dat je als voorbeeld voor je eigen schema kunt gebruiken.
Naar boven

3. Moduleposities

3.1 De positiekaart

Cassiopeia definieert 18 posities. Het layout-skelet, van boven naar beneden:

topbar
below-top
[ brand ]  menu   search
banner
top-a          (card)
top-b          (card)
┌──────────────┬────────────────────┬───────────────┐
│ sidebar-left │ breadcrumbs        │ sidebar-right │
│    (card)    │ main-top   (card)  │    (card)     │
│              │ [ component ]      │               │
│              │ main-bottom (card) │               │
└──────────────┴────────────────────┴───────────────┘
bottom-a       (card)
bottom-b       (card)
footer

Posities gemarkeerd met (card) gebruiken standaard Cassiopeia's card-chrome: modules renderen daar in een opgemaakte doos met de titel als kaartkop. De structurele posities (topbar, menu, breadcrumbs, footer, ...) gebruiken geen chrome. Sidebars verschijnen alleen wanneer er een module in gepubliceerd is - een lege sidebar kost geen ruimte.

3.2 Drie speciale posities

  • debug: waar de debug-console rendert wanneer Debug systeem aanstaat.
  • error-403 en error-404: posities die alleen op foutpagina's renderen. Publiceer er een zoekmodule, een sitemap-menu of een vriendelijke eigen HTML-module en je 404-pagina wordt behulpzaam in plaats van een doodlopende weg - zonder code.

3.3 Posities live bekijken

Schakel Voorbeeld moduleposities in bij de Templates-opties en plak ?tp=1 achter een frontend-URL. Elke positie rendert met een kader en zijn naam - de snelste manier om "waar zit top-b nou echt?" te beantwoorden.

Een detail uit de broncode: Joomla leest de parameter met getBool(‘tp’) en het booleaanse filter is een gewone PHP-cast, dus elke waarde behalve 0 of een lege tekenreeks wordt als “aan” beschouwd. ?tp=peter-was-hier schakelt het voorbeeld net zo goed in als ?tp=1 – en, nog verrassender, dat geldt ook voor ?tp=false.

Naar boven

4. Menu's en navigatie

4.1 De menu-layouts

Cassiopeia levert eigen layouts voor de menumodule mee als overrides in templates/cassiopeia/html/mod_menu/, gebouwd op het kleine metismenu-script:

LayoutGedrag
dropdown-metismenu Horizontaal menu met dropdown-submenu's - de klassieke headernavigatie.
collapse-metismenu Verticaal menu met inklapbare submenu's - voor sidebars en mobiel.

De naam verdient een korte toelichting. MetisMenuJS is een kleine, onder de MIT-licentie vallende menubibliotheek, geschreven in puur JavaScript – zonder jQuery – die Joomla lokaal meelevert als een vendor-pakket in media/vendor/metismenujs/ (4 KB minified, 1,5 KB bij verzending). Het opent en sluit submenu’s door CSS-klassen en het aria-expanded-attribuut op de kleine pijlknoppen te wisselen, en laat de animatie over aan CSS – daarom werken de submenu’s van Cassiopeia met het toetsenbord en schermlezers zonder dat er Bootstrap-JavaScript hoeft te worden geladen. Cassiopeia koppelt dit via een klein verbindingsscript (menu-metismenu.min.js, 592 bytes) dat de bibliotheek als asset-afhankelijkheid declareert, deze bij elk dropdown-menu initialiseert en een eigen verfijning toevoegt: een geopend submenu sluit weer wanneer je ergens buiten het submenu klikt.

Je kiest de layout in het tabblad Geavanceerd van de menumodule. Een menumodule op de positie menu met de dropdown-layout klapt op kleine schermen automatisch samen tot het mobiele "hamburger"-gedrag.

4.2 Het zoekvak

De positie search zit rechts in de headerbalk, op maat voor een compacte zoekmodule. Publiceer er de Smart Search-module met verborgen titel voor het standaard header-zoekpatroon.

Naar boven

5. Aanpassen met user.css en user.js

5.1 Ingebouwde, update-bestendige eigen code

De asset-definities van Cassiopeia registreren twee optionele bestanden die jij aanmaakt:

media/templates/site/cassiopeia/css/user.css
media/templates/site/cassiopeia/js/user.js

Bestaan ze, dan laadt Joomla ze automatisch - en dankzij hun asset-gewicht laadt user.css na de eigen stylesheet van het template, zodat jouw regels winnen zonder !important-gevechten. Joomla-updates raken deze bestanden nooit aan. Voor kleine en middelgrote aanpassingen - kleuren, witruimte, lettertypen, elementen verbergen - is dit alles wat je nodig hebt.

5.2 Een verstandig startpunt voor user.css

:root {
    --cassiopeia-color-primary: #1a3866;   /* je merkkleur */
    --cassiopeia-color-link: #1a3866;
}

.site-grid {
    row-gap: 2rem;                          /* ademruimte */
}

Cassiopeia stelt zijn ontwerp beschikbaar als CSS custom properties, dus het meeste herstijlen is variabelen herdefinieren in plaats van selectors overschrijven. Bekijk colors_standard.css voor de volledige lijst variabelen die het zet.

5.3 Waar user.css ophoudt

CSS verandert het uiterlijk, niet de markup. Zodra je andere HTML nodig hebt - een andere koppenstructuur, extra wrappers, elementen in andere volgorde - heb je user.css-territorium verlaten en betreed je template overrides (zie het Focus On-artikel over template overrides). En groeien je aanpassingen voorbij een handvol bestanden, verzamel ze dan in een child template.

Naar boven

6. Child templates

6.1 Cassiopeia is overerfbaar

Cassiopeia verklaart zichzelf inheritable in zijn manifest, wat de knop Child template aanmaken in het templatebeheer ontgrendelt (Systeem → Site-templates → Cassiopeia details en bestanden). Een child template is een bijna leeg template dat voor alles wat jij niet wijzigde terugvalt op zijn parent - en het is de aanbevolen plek voor al je aanpassingen.

Het dialoogvenster vraagt om een naam en genereert het hele child voor je: een map templates/cassiopeia_jouwnaam/ met een lege html/ klaar voor overrides, een templateDetails.xml afgeleid van die van de parent, en een lege mediamapstructuur (css, js, images, scss) onder media/templates/site/. Het kan ook geselecteerde bestaande stijlen naar het child kopieren, zodat opties die je al instelde meereizen. Verder wordt er niets gedupliceerd - het child begint als lege huls, en dat is precies de bedoeling.

6.2 Wat een child je geeft

  • Een eigen stijl, kiesbaar en toewijsbaar als elke templatestijl.
  • Een eigen map html/: overrides hier winnen van die van de parent (zie het overrides-artikel).
  • Een eigen mediamap (media/templates/site/cassiopeia_mychild/) met eigen user.css / user.js.
  • Updates van Cassiopeia zelf raken er niets van aan.

6.3 De aanbevolen opzet

  1. Maak een child (bijvoorbeeld cassiopeia_site) via de knop Child template aanmaken.
  2. Wijs de stijl van het child toe als standaard voor de site.
  3. Zet je CSS in de user.css van het child, je overrides in de html/ van het child.
  4. Laat de parent Cassiopeia volledig onaangeraakt.

Dit is dezelfde discipline als bij overrides in het algemeen: jouw werk woont in een laag waar updates niet bij kunnen.

Naar boven

7. Templatestijlen in de praktijk

7.1 Een template, veel stijlen

Een template-stijl is een opgeslagen set optiewaarden. Dupliceer de stijl van Cassiopeia (of het child) in Systeem → Site-templatestijlen, wijzig de opties - een ander logo, vloeiend in plaats van statisch, een ander kleurenschema - en wijs hem toe aan specifieke menu-items via het tabblad Menutoewijzing van de stijl. Joomla rendert die pagina's dan met de andere stijl.

7.2 Wat stijlen oplossen

  • Een landingspagina-sectie met een vloeiende, volledige-breedte-layout terwijl de rest statisch blijft.
  • Een campagne- of submerk-gedeelte met eigen logo en kleuren.
  • Een rustige, afleidingsvrije stijl voor documentatiepagina's.

Stijlen kosten niets tijdens runtime en hebben geen extra bestanden nodig - het zijn rijen in #__template_styles met een JSON-kolom params. Voordat je een heel template dupliceert voor een visuele variant: kijk of een tweede stijl het werk doet.

Naar boven

8. Cassiopeia-recepten uit de praktijk

8.1 Een behulpzame 404-pagina

Publiceer drie modules op de positie error-404: een eigen HTML-module ("Deze pagina is verhuisd of heeft nooit bestaan..."), de Smart Search-module, en een menumodule met je hoofdsecties. Resultaat: bezoekers die op een dode link stuiten, krijgen zoeken en navigatie in plaats van een kale foutmelding - een van de goedkoopste UX-verbeteringen in Joomla.

8.2 Een landingspagina over de volledige breedte

Dupliceer je stijl, zet fluidContainer op Vloeiend, wijs de stijl toe aan het landings-menu-item, en bouw de pagina met modules in top-a/top-b (die de volledige breedte beslaan). De rest van de site behoudt de statische layout.

8.3 Headerzoeken plus vastgezette navigatie

Schakel stickyHeader in, publiceer Smart Search in search met verborgen titel, en de header wordt een blijvende navigatie-en-zoekbalk - het patroon dat bezoekers van elke grote site kennen, met twee klikken en nul code.

8.4 Je eigen kleurenschema

Kopieer colors_standard.css uit de mediamap van Cassiopeia naar de mediamap van je child onder een nieuwe naam, pas de custom properties aan en selecteer hem - of herdefinieer simpelweg dezelfde variabelen in user.css als de wijzigingen klein zijn. De variabelen-aanpak zorgt dat je schema template-updates overleeft.

8.5 Bootstrap-utilities in je content

Omdat de gecompileerde stylesheet van Cassiopeia Bootstrap 5 bevat, kunnen redacteuren Bootstrap-classes direct in artikelen en eigen HTML-modules gebruiken - geen installatie, geen extra CSS. Een blok met twee kolommen in een artikel is gewoon <div class="row"> met twee kinderen <div class="col-md-6">; witruimte-utilities (mt-4, p-3), flex-helpers (d-flex) en knopstijlen (btn btn-primary) werken allemaal meteen. Houd het bescheiden - content vol layout-classes is lastig te onderhouden - maar voor het incidentele gestructureerde blok wint dit van een pagebuilder installeren.

Naar boven

9. Onder de motorkap (ontwikkelaarsblik)

9.1 De bestandsanatomie

BestandRol
index.php Het paginaskelet: header, grid, posities, jdoc-includes.
templateDetails.xml Manifest: posities, opties (de velden uit sectie 2), <inheritable>1</inheritable>.
joomla.asset.json Web Asset Manager-definities: stylesheets, scripts, afhankelijkheden, gewichten.
error.php, offline.php, component.php De foutpagina, de offline-pagina en de kale component-weergave (printen, modals).
html/ Cassiopeia's eigen overrides: de metismenu-layouts voor mod_menu, een banner-layout voor mod_custom, en de chromes card/noCard.

9.2 De Asset Graph

Cassiopeia is een schoolvoorbeeld van de Web Asset Manager. Zijn joomla.asset.json definieert benoemde assets met afhankelijkheden: template.cassiopeia.ltr/.rtl (de hoofdstylesheet per tekstrichting), template.active (een alias die het framework naar het actieve template vertaalt), en template.user - het user.css/user.js-paar uit sectie 5, gedeclareerd met gewicht 500 zodat het als laatste laadt. Moet je eigen extensie na de CSS van het template laden, maak hem dan afhankelijk van template.active in plaats van bestandspaden hard te coderen.

9.3 index.php lezen

De index.php van het template is kort en leesbaar, en drie details zijn een blik waard: de logo-terugvalketen (afbeelding, dan siteTitle, dan sitenaam - exact de volgorde uit sectie 2.2), de voorwaardelijke wrappers die de markup van een positie alleen renderen wanneer er een module gepubliceerd is, en de keuzes style="card" versus style="none" per positie. Bouw je je eigen template- of child-index.php, dan is Cassiopeia de referentie-implementatie om na te volgen.

9.4 Wat de frontend aandrijft

Bootstrap 5 levert het grid en de componenten, metismenu de menu-interacties - beide lokaal meegeleverd, geen CDN. Het template legt er zijn eigen CSS overheen; er is geen buildstap om op de server te draaien, en niets belt naar huis. Dat is het bewaren waard in je eigen aanpassingen: houd assets lokaal, en je site blijft snel en AVG-stil.

9.5 De SCSS-bronnen

Cassiopeia levert zelfs de bronnen van zijn stylesheet mee: media/templates/site/cassiopeia/scss/ bevat template.scss, template-rtl.scss en offline.scss, die Bootstrap en de eigen partials van het template importeren. De live site compileert ze nooit - die laadt de voorgebouwde CSS - maar ze zijn op twee manieren waardevol: als de gezaghebbende referentie voor hoe de stijlen van het template zijn opgebouwd, en als startpunt voor een volledig eigen build (compileer met een Sass-toolchain in je ontwikkelomgeving en lever het resultaat als stylesheet van je child template). Voor alledaagse aanpassingen blijven user.css en de CSS-variabelen het juiste gereedschap; grijp pas naar een eigen SCSS-build wanneer je feitelijk je eigen template op het fundament van Cassiopeia ontwerpt.

Naar boven

10. Overrides in Cassiopeia

Alles uit het Focus On-artikel over template overrides geldt onveranderd: component-overrides in html/com_content/..., module-overrides, layout-overrides, chromes. Cassiopeia voegt twee dingen toe die het weten waard zijn. Ten eerste bevat het al eigen overrides (de metismenu-layouts en de card-chromes), dus het is meteen een set uitgewerkte voorbeelden in precies de stijl waarin het core-team ze schrijft. Ten tweede: omdat Cassiopeia overerfbaar is, horen jouw overrides in de map html/ van het child - de zoekvolgorde bekijkt het child voor de parent, zodat de parent updates kan blijven ontvangen, overrides incluis.

Een praktische waarschuwing, herhaald uit het overrides-artikel omdat hij juist bij Cassiopeia het vaakst voorkomt: bewerk geen bestanden in templates/cassiopeia/. De volgende Joomla-update levert een nieuwe Cassiopeia en overschrijft je werk stilletjes. Child template, user.css, overrides - die drie overleven alles.

Naar boven

11. Cassiopeia en de Web Services API

Templatestijlen - inclusief elke Cassiopeia-optie uit sectie 2 - zijn via REST te beheren. De stijl-endpoints (v1/templates/styles/site) tonen elke stijl met zijn JSON-params, zodat een provisioning-script op afstand een vloeiende landingspagina-stijl kan aanmaken of de standaardstijl van de site kan omschakelen:

curl -H "X-Joomla-Token: <token>" \
     https://example.test/api/index.php/v1/templates/styles/site

De bestanden van het template - user.css, overrides, de html/-map van een child - zijn bestandssysteem-artefacten buiten het bereik van de API; zet ze uit met git of rsync als onderdeel van je normale deployment. En zoals bij alle presentatie: niets van Cassiopeia beinvloedt wat de API teruggeeft - API-antwoorden zijn ruwe data, welk template er ook actief is.

Naar boven

12. SEO en metadata

Cassiopeia geeft je een technisch schone SEO-basis: semantische HTML5-landmarks, een logische documentstructuur, snelle rendering zonder externe verzoeken, en lokaal gehoste lettertypen - geen font-CDN betekent een externe afhankelijkheid minder, voor snelheid en voor de AVG. Het logo-blok linkt naar de homepage met de sitenaam als toegankelijke tekst, en foutpagina's zijn echte pagina's die je kunt inrichten (sectie 8.1) in plaats van doodlopende wegen.

Twee dingen blijven jouw verantwoordelijkheid. Ten eerste de koppenstructuur binnen de content: Cassiopeia rendert wat componenten en modules aanleveren, dus bewaak de discipline van een h1 per pagina in je artikelen en moduletitels - card-chrome rendert moduletitels als koppen, en precies daarom doen kopniveaus van modules ertoe. Ten tweede afbeeldingsdiscipline in het brand-gebied: geef het logobestand een beschrijvende naam en onthoud dat de alt-tekst uit de sitenaam komt; vervang je de header met een eigen override, houd die toegankelijke naam dan intact.

Naar boven

13. Veelvoorkomende fouten en valkuilen

13.1 Cassiopeia's bestanden direct bewerken

Symptoom: eigen CSS of template-bewerkingen verdwenen na een Joomla-update.

Oplossing: Joomla-updates vervangen templates/cassiopeia/ en de bijbehorende mediamap. Doe het werk opnieuw in de update-bestendige lagen: user.css, een child template, overrides. Dan gebeurt het nooit meer.

13.2 user.css laadt niet

Symptoom: het bestand bestaat, maar er verandert niets.

Oplossing: controleer de exacte locatie en naam: media/templates/site/cassiopeia/css/user.css (of de mediamap van het child wanneer een child-stijl actief is - een user.css in de parent wordt voor een child niet geladen). Leeg daarna de cache en forceer een browserverversing.

13.3 De logo-opties vechten met elkaar

Symptoom: je stelt een titel in maar er verschijnt een afbeelding, of de sitenaam verschijnt in plaats van je titel.

Oplossing: onthoud de volgorde: afbeelding wint van titel wint van sitenaam. Maak het veld logoFile leeg als je de teksttitel wilt; zet brand uit om het blok helemaal te verbergen.

13.4 Modules zonder kader (of met een kader te veel)

Symptoom: een module rendert met een onverwachte kaart, of zonder de kaart die je wilde.

Oplossing: de positie bepaalt de standaard-chrome (sectie 3.1), en elke module kan dat overschrijven onder Geavanceerd → Modulestijl. Zet hem expliciet op card of noCard wanneer de positiestandaard niet past.

13.5 De parent aanpassen terwijl een child actief is

Symptoom: overrides of CSS toegevoegd aan Cassiopeia hebben geen effect.

Oplossing: de actieve stijl hoort bij het child, en de bestanden van het child winnen. Verplaats de aanpassing naar het child - waar hij toch al thuishoorde.

13.6 Een pagebuilder verwachten

Symptoom: frustratie dat Cassiopeia "zo weinig instellingen" heeft vergeleken met commerciele templates.

Oplossing: de instellingen van Cassiopeia zijn bewust beperkt; de kracht zit in stijlen, posities, user.css en overrides. Investeer een dag in die vier mechanismen en je hebt meer controle dan de meeste template-controlepanelen geven - met minder afhankelijkheid.

Naar boven

14. Best practices

Als je maar een paar dingen uit dit artikel onthoudt, onthoud dan deze:

  • Bewerk nooit de eigen bestanden van Cassiopeia; zet alles in een child template, user.css en overrides.
  • Maak het child template op dag een - ook als het leeg begint, heeft elke latere aanpassing een veilig thuis.
  • Kies het herdefinieren van CSS custom properties boven het overschrijven van selectors; bekijk colors_standard.css voor de variabelenamen.
  • Gebruik templatestijlen (gedupliceerd, per menu toegewezen) voor variaties per sectie in plaats van extra templates.
  • Richt de posities error-403/error-404 in - een behulpzame foutpagina kost vijf minuten.
  • Houd assets lokaal, zoals Cassiopeia doet: geen font- of script-CDN's.
  • Gebruik de positie-preview ?tp=1 voordat je vraagt waar een positie zit.
  • Behandel Cassiopeia's eigen map html/ en joomla.asset.json als referentiemateriaal voor je eigen templatewerk.
Naar boven

15. In het kort

BESTANDEN    templates/cassiopeia/            index.php, manifest, html/
             media/templates/site/cassiopeia/ css, js, fonts
             eigen bestanden: css/user.css + js/user.js
             (laden als laatste, update-bestendig)

OPTIES       brand / logoFile / siteTitle / siteDescription
             logovolgorde: afbeelding > titel > sitenaam
             fluidContainer, stickyHeader, backTop
             useFontScheme (lokale Roboto), colorName (standard/alternative)

POSITIES     topbar below-top menu search banner
             top-a top-b (card)
             sidebar-left | breadcrumbs main-top [component]
             (card)       | main-bottom (card)  | sidebar-right (card)
             bottom-a bottom-b (card) footer
             speciaal: debug, error-403, error-404
             preview: ?tp=1 (inschakelen bij Templates-opties)

MENU         html/mod_menu: dropdown-metismenu (horizontaal)
                            collapse-metismenu (verticaal)
             search-positie = compact zoekvak in de header

CHILD        manifest: inheritable = 1
             Systeem > Site-templates > Child template aanmaken
             child html/ + child user.css winnen van de parent

STIJLEN      stijl dupliceren > opties wijzigen > Menutoewijzing
             opgeslagen in #__template_styles (params-JSON)
             API: v1/templates/styles/site

CHROMES      card (doos, titel als kop) / noCard
             per module: Geavanceerd > Modulestijl

REGELS       nooit cassiopeia-bestanden bewerken -
             child/user.css/overrides
             assets lokaal, afhankelijk van template.active
Naar boven

16. Samenvatting

Cassiopeia beloont een nadere blik meer dan de meeste mensen hem geven:

  • Een bewust canvas: gebaseerd op Bootstrap 5, toegankelijk, snel, met lokale assets en geen externe afhankelijkheden.
  • Flexibele opties: brand en logo-terugval, statische of vloeiende breedte, vastgezette header, lokaal lettertypeschema en verwisselbare kleurenschema's.
  • 18 posities inclusief de speciale error-403/error-404 die van foutpagina's behulpzame pagina's maken.
  • Update-bestendige aanpassings lagen: user.css/user.js laden automatisch en als laatste; child templates (Cassiopeia is overerfbaar) bevatten overrides en assets; templatestijlen dekken variatie per sectie.
  • Een referentie-implementatie: de index.php, asset-definities, menu-layouts en chromes zijn de uitgewerkte voorbeelden voor al je Joomla-templatewerk.
  • Duidelijke grenzen: stijlen zijn via de API te beheren; bestanden deployen via git; niets in het template raakt wat de API teruggeeft.

Je hoeft Cassiopeia niet te vervangen voor een professionele site. Je hebt een child template nodig, een user.css, een handvol goed gekozen overrides en een uur met de opties - daarna doet het template jarenlang stilletjes zijn werk.

En draait jouw site op een zwaar aangepaste Cassiopeia - of op een commercieel template dat bij elke update tegenwerkt - dan is het goed om te weten dat migreren naar een schone child-template-opzet een afgebakende, methodische klus is: de aanpassingen inventariseren, ze naar de update-bestendige lagen verplaatsen, pagina voor pagina controleren. Precies het soort gestructureerd werk dat een Joomla-specialist goed af gaat, en het betaalt zich terug bij elke update die volgt.

Naar boven
Cassiopeia: de complete gids voor Joomla's standaard template
Peter Martin
Peter Martin
Joomla Specialist

Peter is Joomla specialist en Linux admin voor snelle, veilige en schaalbare websites.

Gerelateerde artikelen