Terug naar hoofdinhoud
Menu's in Joomla
Op deze pagina
# Topics

Menu's in Joomla

26 mei 2026

11. Ecosysteem en extensies

11.1 Voorwaardelijke Custom Fields

Voorwaardelijke velden verschijnen of verdwijnen afhankelijk van de waarde van een ander veld. Dit wordt in Joomla 6 standaard ondersteund via plugininstellingen. Een typisch voorbeeld is een veld "Ticket URL" dat alleen wordt getoond wanneer het selectievakje "Heeft tickets" is ingeschakeld.

11.2 YOOtheme Pro

YOOtheme Pro is een populaire pagebuilder-template die Joomla Custom Fields integreert in het systeem voor dynamische content:

  • Plaats een custom field-waarde in elk builder-element.
  • Filter en sorteer dynamische lijsten op basis van custom field-waarden.
  • Gebruik het ingebouwde veld Location (breedte- en lengtegraad) op een kaart.

Als je team al met YOOtheme werkt, hoef je waarschijnlijk nooit een layout override voor velden te schrijven.

11.3 Advanced Custom Fields van Tassos

Deze extensie van derden voegt veldtypen toe die niet standaard in Joomla zitten, samen met uitgebreidere renderopties en conditionele logica. Handig wanneer de 18 standaard veldtypen niet voldoende zijn, maar een volledige CCK te veel van het goede zou zijn.

11.4 Wanneer kies je beter voor een CCK?

Custom Fields zijn ideaal voor content met extra eigenschappen. Voor echte databasegestuurde toepassingen, zoals boekingssystemen, vastgoedwebsites met zoekfilters of complexe relaties, kun je beter kijken naar:

  • Seblod of Fabrik: volledige content construction kits.
  • Een maatwerkcomponent die integreert met com_fields.
Naar boven

12. Best practices

Als je maar een paar dingen uit dit artikel onthoudt, laat het dan deze zijn:

  • Plan je velden en veldgroepen voordat je content gaat aanmaken.
  • Kies vanaf het begin het juiste type. Achteraf wijzigen is vaak pijnlijk.
  • Gebruik duidelijke systeemnamen zoals event_date, nooit Field1.
  • Groepeer gerelateerde velden in Field Groups voor een overzichtelijke editorervaring.
  • Gebruik het Number-veld (nieuw in Joomla 6) voor prijzen en percentages.
  • Gebruik het Note-veld (nieuw in Joomla 6) om redacteuren binnen het formulier te begeleiden.
  • Gebruik Subforms voor gegevens waarbij één item meerdere onderdelen bevat.
  • Stel ACL alleen op veldniveau in wanneer dat echt nodig is. Gebruik waar mogelijk overerving.
  • Overschrijf layouts onder layouts/com_fields/field/ als je volledige controle wilt over de weergave.
Naar boven

13. In het kort

VELD AANMAKEN      Content → Fields → New
GROEP AANMAKEN     Content → Field Groups → New
TOEWIJZEN          Field → tabblad Assigned Categories
WEERGEVEN          Field → instelling Automatic Display
INLINE              of  in de inhoud
OVERRIDE           templates/{tpl}/html/layouts/com_fields/...
TYPE OVERRIDE      render-<fieldname>.php voor één veld
GEBRUIKERS         Users → Manage → Fields
CONTACTEN          Components → Contacts → Fields
CATEGORIEËN        Content → Categories → Fields
TAGS               Components → Tags → Fields
CORE-TYPEN         18 in Joomla 6 (Number en Note zijn nieuw)
SUBFORM            Herhaalbare gegevens, opgeslagen als JSON
SQL-VELD           Alleen voor Super Users, voorzichtig gebruiken
API                FieldsHelper::getFields('com_content.article', $item)
HEADLESS           /api/index.php/v1/content/articles/N → fields[]
TABELLEN           #__fields / _groups / _values / _categories
Naar boven

14. Samenvatting

Custom Fields veranderen Joomla van een standaard CMS in een lichtgewicht platform voor contentmodellering. Ze bieden:

  • Structuur: content met een voorspelbare opbouw.
  • Herbruikbaarheid: dezelfde velden voor meerdere items.
  • Gebruikerservaring per categorie: redacteuren zien alleen wat ze nodig hebben.
  • Weergave: automatisch, via shortcodes of met volledige template overrides.
  • Rechtenbeheer: duidelijke controle over wie mag bewerken en wie wat mag zien.
  • Uitbreidbaarheid: eigen veldtypen via plugins.
  • Integratie: artikelen, gebruikers, contacten, tags, categorieën en componenten van derden.

Een goed ontworpen verzameling Custom Fields maakt een Joomla-website makkelijker te bewerken, eenvoudiger te onderhouden en beter uitbreidbaar. Slecht benoemde of verkeerd toegewezen velden veroorzaken juist problemen die meegroeien met de website.

Ben je bezig met een nieuw Joomla-project, ontwerp je een complex contenttype of denk je na over een headless architectuur, dan zijn Custom Fields één van de eerste functies om naar te kijken. Ze zijn misschien niet de meest opvallende functie van Joomla, maar wel een van de krachtigste redenen waarom Joomla meer flexibiliteit biedt dan veel CMS-systemen met een vaste contentstructuur.

Naar boven

4. De Itemid, Joomla's verborgen contextmotor

4.1 Wat is de Itemid?

Elke frontendpagina die Joomla weergeeft, is gekoppeld aan een menu-item via de URL-parameter Itemid. De Itemid bepaalt:

  • Welk menu-item actief wordt gemarkeerd.
  • Welke modules worden getoond.
  • Welke template style wordt gebruikt, als het menu-item deze overschrijft.
  • Welke pagina-instellingen gelden: browsertitel, page class, robots.
  • De breadcrumbs.

Hetzelfde artikel met twee verschillende Itemid-waarden wordt twee verschillende pagina's.

4.2 Wat gebeurt er zonder Itemid?

Als een URL geen Itemid bevat, probeert Joomla's router er zelf één te bepalen. Die gok is niet altijd correct, wat kan leiden tot:

  • Het verkeerde actieve menu-item.
  • Modules die verschijnen waar ze niet horen, of juist ontbreken.
  • Dubbele URL's voor dezelfde content.
  • Verkeerde breadcrumbs.

Als een pagina zich vreemd gedraagt, is de eerste controle meestal de Itemid.

4.3 De Itemid controleren

Je kunt de Itemid bekijken door &tp=1 aan de URL toe te voegen (templateposities), of door naar de ruwe querystring te kijken voordat SEF de URL herschrijft. De Itemid is het laatste numerieke ID in de URL:

index.php?option=com_content&view=article&id=42&Itemid=123
Naar boven

5. Menu-items bepalen welke modules worden getoond

5.1 Opties voor moduletoewijzing

Voor elke module in Joomla bepaal je waar deze moet verschijnen:

  • Op alle pagina's.
  • Op geen enkele pagina.
  • Alleen op geselecteerde pagina's.
  • Op alle pagina's behalve de geselecteerde.

De geselecteerde pagina's zijn menu-items. De relatie tussen modules en menu-items wordt opgeslagen in de tabel #__modules_menu.

5.2 Waarom dit zo krachtig is

Je kunt de volledige layout per pagina aanpassen zonder code te schrijven:

Homepage-slider          → alleen op het Home-menu-item
Sidebar met winkelactie  → alleen op winkelcategoriepagina's
Nieuwsbriefinschrijving  → overal behalve bij afrekenen
Loginmodule              → alleen op het Login-menu-item

5.3 Een handige vuistregel

Moet een module slechts op één plek verschijnen, geef die pagina dan een eigen menu-item, zelfs als dat menu-item verborgen is.

Naar boven

6. Verborgen menu's

6.1 Wat is een verborgen menu?

Een verborgen menu is een menu met menu-items waarvoor geen Menu-module is gepubliceerd. Bezoekers kunnen deze URL's nog steeds rechtstreeks openen, maar de menu-items verschijnen nergens in de navigatie.

6.2 Wanneer gebruik je een verborgen menu?

Verborgen menu's zijn handig voor allerlei praktijksituaties:

  • Campagnelandingspagina's met eigen modules.
  • "Bedankt"- en orderbevestigingspagina's.
  • Interne pagina's met beperkte toegang.
  • Zoekresultaatpagina's.
  • Printversies of alternatieve layouts.
  • Workflow- of tussenstappen in meerstapsformulieren.

6.3 De truc

De verborgen pagina krijgt nog steeds een geldige Itemid, waardoor:

  • Moduletoewijzingen correct werken.
  • Metadata en page class beschikbaar zijn.
  • Routing en SEF-URL's goed functioneren.

Je krijgt alle voordelen van een menu-item, zonder extra rommel in de navigatie.

Naar boven

7. Meertalige menu's

7.1 Het patroon

Voor een meertalige website maak je meestal:

  • Één menu per taal, bijvoorbeeld mainmenu-en en mainmenu-nl.
  • Associaties tussen equivalente menu-items in verschillende talen.
  • Één Home-menu-item per taal, allemaal gemarkeerd als standaardpagina.

7.2 Associaties

Open een menu-item en ga naar het tabblad Associations:

System → Menus → All Menu Items → [item] → Associations

Door equivalente menu-items aan elkaar te koppelen, activeer je:

  • De module Language Switcher.
  • Routing naar dezelfde pagina in een andere taal.
  • Correcte hreflang-tags.
  • Vertaalde breadcrumbs.

De associatie wordt opgeslagen in de tabel #__associations met context = com_menus.item.

7.3 Veelgemaakte fouten bij meertalige websites

  • Vergeten een Home-menu-item in te stellen voor elke taal.
  • Menu-items met taal "Alle" combineren met taalspecifieke menu-items.
  • Ontbrekende associaties, waardoor de taalwisselaar bezoekers terugstuurt naar de homepage.
  • Verschillende aliasstructuren per taal.
Naar boven

8. Toegangsbeheer (ACL)

8.1 Twee lagen van zichtbaarheid

Menu-items hebben twee afzonderlijke lagen van toegangsbeheer. Dat zijn niet dezelfde dingen:

LaagWat het bepaalt
Access Level Of een gebruiker de link naar het menu-item ziet.
Rechten op component- of itemniveau Of een gebruiker het doel daadwerkelijk kan openen.

Een gebruiker die geen toegang heeft tot een artikel krijgt die toegang niet automatisch omdat de menulink zichtbaar is.

8.2 Praktische voorbeelden

  • Een openbare website met een ledenomgeving achter het toegangsniveau Registered.
  • Een intranet waar menu-items alleen zichtbaar zijn voor Special.
  • Een onboardingproces dat is afgeschermd met een aangepast toegangsniveau "Onboarding".
  • Een link "Profiel bewerken" die alleen zichtbaar is voor ingelogde gebruikers.

8.3 ACL-valkuilen bij menu's

  • Een menu-item verbergen beveiligt de URL niet. Je moet ook de onderliggende content afschermen.
  • Een menu-item met Access = Public dat verwijst naar een artikel met Registered-toegang zorgt voor een verwarrende 403-fout.
  • Moduletoewijzingen erven ook toegangsniveaus. Een module voor ingelogde gebruikers op een openbaar menu-item wordt alleen weergegeven aan bezoekers die zijn ingelogd.
Naar boven

9. Routing en SEF

9.1 De routeerpijplijn

Wanneer een bezoeker een Joomla-pagina opent, doorloopt het systeem verschillende stappen:

  1. De browser verstuurt een verzoek, bijvoorbeeld /nieuws/joomla-6-uitgebracht.
  2. De router van Joomla analyseert de URL.
  3. De router zoekt het bijbehorende menu-item, bijvoorbeeld een Category Blog voor nieuws.
  4. De Itemid wordt ingesteld en vervolgens wordt de component bepaald.
  5. Joomla bouwt de parameters op, wijst modules toe en rendert de template.

Het menu-item vormt het anker voor dit hele proces.

9.2 SEF en menu-items

Met SEF-URL's ingeschakeld wordt de alias van het menu-item onderdeel van het URL-pad. Geneste menu-items leveren geneste URL-structuren op:

Main Menu → Nieuws          (alias: nieuws)
            └── Category Blog  (alias: producten)
                 └── Artikel   (alias: laptops)

URL: /nieuws/producten/laptops

Een goede aliasstrategie houdt URL's kort, voorspelbaar en SEO-vriendelijk.

9.3 Canonieke pagina's

Wanneer twee menu-items naar dezelfde content verwijzen, genereert Joomla een canonieke <link rel="canonical"> naar de pagina die als hoofdversie wordt beschouwd. Controleer dit zorgvuldig wanneer je de navigatiestructuur wijzigt, omdat canonicals onverwacht kunnen veranderen.

9.4 SEO-voordelen in één oogopslag

Een goed opgebouwde menustructuur levert automatisch:

  • Schone URL's gebaseerd op menu-item-aliasen.
  • Hiërarchische URL-paden die overeenkomen met de informatiearchitectuur van de website.
  • Metadata per pagina: browsertitel, beschrijving en robotsinstellingen.
  • Breadcrumbs die worden opgebouwd vanuit de menustructuur.
  • Canonieke tags die dubbele routes consolideren.
  • hreflang-signalen via meertalige associaties.
  • Onderwerpclusters doordat onderliggende pagina's binnen hetzelfde URL-pad vallen.

Een slechte menustructuur veroorzaakt precies het tegenovergestelde: dubbele content, lelijke fallback-URL's, conflicterende canonicals, kapotte breadcrumbs en onjuiste hreflang-relaties.

Een goed opgebouwd menu is één van de goedkoopste SEO-winsten in Joomla.

Naar boven

10. Beheermenu's

10.1 Het backendmenu is ook gewoon data

Het beheermenu wordt eveneens opgeslagen in de tabel #__menu, maar met client_id = 1 en menutype = main. Je kunt het net als elk ander menu beheren via:

System → Menus → Administrator Menus

10.2 Een backend die vriendelijk is voor klanten

Je kunt een vereenvoudigd beheermenu maken dat alleen de onderdelen bevat die een klant daadwerkelijk nodig heeft:

Content     → Artikelen | Categorieën | Uitgelicht | Media
Shop        → Producten | Bestellingen | Klanten
Marketing   → Nieuwsbrief | Campagnes | Formulieren
Instellingen → Gebruikers | Modules | Template

Het resultaat:

  • Minder verwarring voor niet-technische redacteuren.
  • Minder kans op onbedoelde wijzigingen in systeeminstellingen.
  • Snellere onboarding van nieuwe medewerkers.
  • Minder supportvragen voor bureaus en beheerders.

10.3 Workflow-snelkoppelingen

Praktische éénklik-items die redacteuren veel tijd besparen:

  • Artikel toevoegen: index.php?option=com_content&task=article.add
  • Wachtende inzendingen: een gefilterde artikelenlijst met status "niet gepubliceerd".
  • Bestellingen van vandaag: een componentweergave die vooraf is gefilterd op datum.
  • Nieuwsbriefcampagnes: direct naar de campagnecomponent.

Elke snelkoppeling is een URL-menu-item met de juiste querystring. Geen code, alleen configuratie.

10.4 Rolgebaseerde backendnavigatie

Je kunt beheermenu's combineren met ACL zodat elke gebruikersgroep zijn eigen backend ziet:

GroepMenu toont
Redacteuren Artikelen, Media, Categorieën, Tags.
Marketing Banners, SEO-tools, Campagnes, Smart Search.
Winkelbeheerders Producten, Bestellingen, Klanten, Kortingscodes.
Ontwikkelaars Templates, Extensies, Systeemtools, Plugins.
Super Users Alles (het standaardmenu main).

Het gebruikelijke patroon is: één beheermenu per rol, afgeschermd met een Access Level op elk menu-item.

10.5 Beheermenu-items versus frontendmenu-items

Menu-items in de backend gedragen zich anders dan frontendmenu-items:

  • Ze maken geen frontendpagina's aan.
  • Ze hebben geen invloed op routing of SEO.
  • Ze ondersteunen wel ACL, waardoor je items per gebruikersgroep kunt afschermen.
  • Ze ondersteunen wel iconen en hiërarchische structuren.

Het is één van de meest onderbenutte functies van Joomla.

Naar boven

11. Onder de motorkap (voor ontwikkelaars)

11.1 De tabel #__menu

Elk menu-item, zowel in de frontend als backend, wordt opgeslagen in dezelfde tabel. De belangrijkste kolommen zijn:

id                -- primaire sleutel, gebruikt als Itemid
menutype          -- bij welk menu het hoort
title             -- zichtbaar label
alias             -- SEF-segment
path              -- volledig aliasspoor (ouder/kind/kleinkind)
link              -- onderliggende index.php?option=... query
type              -- component | url | alias | separator | heading
published         -- 0 = niet gepubliceerd, 1 = gepubliceerd, -2 = verwijderd
parent_id         -- bovenliggend menu-item
level             -- diepte in de boomstructuur
component_id      -- gekoppelde component
access            -- ACL-toegangsniveau
template_style_id -- template style-override
params            -- JSON met layout- en metadata-opties
lft, rgt          -- nested set-waarden
home              -- 1 = standaardpagina (per taal)
language          -- '*' of een specifieke taalcode
client_id         -- 0 = frontend, 1 = administrator
publish_up        -- geplande publicatiedatum
publish_down      -- geplande depublicatiedatum

De kolom params bevat alle configuratie per menu-item in JSON-formaat: titel tonen, page class suffix, robots-instellingen, bloglayout en meer.

11.2 De tabel #__menu_types

De tabel #__menu_types bevat de menucontainers, één record per menu (mainmenu, footer, usermenu enzovoort).

TabelBevatKoppeling via
#__menu_types De menu's zelf. menutype (een string).
#__menu De menu-items. menutype komt overeen.

Opvallend is dat de koppeling gebeurt via een string en niet via een ID. Dat is een typische Joomla-eigenaardigheid.

11.3 De tabel #__modules_menu

Deze kleine maar krachtige tabel bevat de relatie tussen modules en de menu-items waarop ze worden weergegeven:

moduleid   -- welke module
menuid     -- welk menu-item (Itemid)
             positief = "toon op dit item"
             negatief = "toon op alle items behalve deze"
             0        = "alle pagina's"

Deze kleine tabel vormt de basis van Joomla's volledige strategie voor moduletoewijzing per pagina.

11.4 Het Nested Set Model (lft en rgt)

Net als categorieën gebruiken menu-items het Nested Set Model. Elk item heeft een lft- en rgt-waarde. Het bereik van een ouderitem omvat altijd alle onderliggende items:

Main Menu Root         lft=1   rgt=10
├── Home               lft=2   rgt=3
└── Nieuws             lft=4   rgt=9
     ├── Nationaal      lft=5   rgt=6
     └── Internationaal lft=7   rgt=8

Om alle onderliggende items van "Nieuws" op te halen, heb je slechts één query nodig:

SELECT id, title
  FROM #__menu
 WHERE lft > 4 AND rgt < 9
 ORDER BY lft;

Recursie is niet nodig. Dat is precies de kracht van dit model.

11.5 De knop Rebuild

Het scherm Alle menu-items bevat een knop Rebuild in de werkbalk:

System → Menus → All Menu Items → Rebuild

Rebuild berekent de kolommen lft, rgt, level en path opnieuw op basis van parent_id. Gebruik dit na:

  • Het importeren van menu-items via SQL.
  • Een mislukte opslagactie.
  • Een migratie vanaf een andere website.
  • Handmatige databasewijzigingen aan ouder-kindrelaties.

11.6 Handige SQL-voorbeelden

Toon alle gepubliceerde frontendmenu-items in boomvolgorde:

SELECT id, menutype, title, alias, level, link
  FROM jos_menu
 WHERE client_id = 0
   AND published = 1
 ORDER BY lft;

Toon welke modules op welke menu-items verschijnen:

SELECT m.id AS itemid, m.title AS pagina,
       mod.id AS moduleid, mod.title AS module
  FROM jos_menu m
  JOIN jos_modules_menu mm ON mm.menuid = m.id
  JOIN jos_modules mod     ON mod.id    = mm.moduleid
 WHERE m.client_id = 0
 ORDER BY m.lft;

Zoek moduletoewijzingen die verwijzen naar een verwijderd menu-item:

SELECT mm.*
  FROM jos_modules_menu mm
  LEFT JOIN jos_menu m ON m.id = mm.menuid
 WHERE mm.menuid > 0 AND m.id IS NULL;

11.7 De PHP API

Vanuit PHP kun je menu's benaderen via een nette API:

use Joomla\CMS\Factory;

$app  = Factory::getApplication();
$menu = $app->getMenu();        // SiteMenu of AdminMenu

$active = $menu->getActive();   // huidig menu-item
$home   = $menu->getDefault();  // standaardpagina voor huidige taal
$item   = $menu->getItem(101);  // op id
$tree   = $menu->getTree();     // breadcrumbpad
$items  = $menu->getItems('menutype', 'mainmenu');

11.8 Events om op aan te haken

Plugins kunnen reageren op menu-gerelateerde events:

EventWanneer uitgevoerd
onAfterRoute Nadat de router een menu-item heeft gevonden.
onContentPrepare (context com_menus.item) Vóór het renderen van een menu-item.
onExtensionAfterSave (context com_menus.item) Nadat een menu-item is opgeslagen.
onExtensionAfterDelete Nadat een menu-item is verwijderd.
Naar boven

12. Veelgemaakte fouten en valkuilen

12.1 Te veel menu-items op het hoogste niveau

Een platte menubalk met te veel items is lastig te scannen:

Home  Nieuws  Blog  Evenementen  Over ons  Team  Geschiedenis  Contact  Zoeken

Een ondiepe structuur met logische groepering werkt veel beter:

Home    Nieuws    Over ons    Contact
                     ├── Team
                     ├── Geschiedenis
                     └── Missie

12.2 Geen standaard Home-menu-item per taal

Typische symptomen zijn een lege homepage, een 404-fout op / of de verkeerde taal op de root-URL. De oplossing is eenvoudig: elke actieve taal moet precies één Home-menu-item hebben, gemarkeerd met de gele ster.

12.3 Verborgen betekent niet beveiligd

Het verwijderen van een Menu-module verbergt de onderliggende pagina niet. Als de URL gevoelig is, stel dan een Access Level in op zowel het menu-item als de onderliggende content.

12.4 Alias-wijzigingen met gevolgen

Het hernoemen van een menu-item verandert vaak ook de alias, en dus de URL. Dat heeft gevolgen voor SEO. Als je een URL moet wijzigen, stel dan een 301-redirect in via com_redirect of een redirectplugin.

12.5 Dubbele menu-items voor dezelfde content

Als twee menu-items naar dezelfde content verwijzen, kiest Joomla één ervan als canonieke versie. Welke dat is, is niet altijd duidelijk. Heb je echt meerdere navigatiepaden naar dezelfde content nodig, gebruik dan een System Link van het type Alias in plaats van twee afzonderlijke menu-items.

12.6 Moduletoewijzing vergeten

Een module die is ingesteld op "Only on the pages selected" maar geen geselecteerde pagina's heeft, wordt nergens weergegeven. Dit is verrassend vaak een bug waar je een half uur naar kunt zoeken.

12.7 Client_id door elkaar halen

Het bewerken van de verkeerde regel in #__menu kan het beheermenu beschadigen. Filter altijd op client_id wanneer je rechtstreeks met de database werkt.

Naar boven

13. Best practices

Als je maar een paar dingen uit dit artikel onthoudt, laat het dan deze zijn:

  • Plan je menustructuur voordat je content gaat aanmaken. Menu-items bepalen URL's, modules, SEO en ACL.
  • Beschouw elk "type pagina" als een kandidaat voor een eigen menu-item, ook als dat menu-item verborgen blijft.
  • Houd aliassen kort, in kleine letters, met koppeltekens en zo stabiel mogelijk.
  • Gebruik Headings en Separators om lange dropdownmenu's overzichtelijk te groeperen.
  • Documenteer verborgen menu's zodat toekomstige beheerders weten dat ze bestaan.
  • Voer Rebuild uit na migraties of directe databasewijzigingen.
Naar boven

14. In het kort

MENU AANMAKEN      System → Menus → Menus → New
ITEM AANMAKEN      System → Menus → [Menunaam] → New
TONEN OP FRONTEND  Publiceer een Menu-module voor het menutype
HOMEPAGINA         Markeer een item als "Default" (gele ster) per taal
ITEMID             De id-kolom van #__menu, bepaalt modules, SEO en layout
PAGINA VERBERGEN   Plaats deze in een menu zonder Menu-module
AFSCHERMEN         Access Level (op menu-item én content)
MEERTALIG          Eén menu per taal + Associations
VOLGORDE           Slepen en neerzetten, of Rebuild gebruiken na SQL-wijzigingen
BOOM HERSTELLEN    System → Menus → All Menu Items → Rebuild
MODULE PER PAGINA  Module → Menu Assignment → Only on the pages selected
TEMPLATE OVERRIDE  Stel Template Style in op het menu-item
ZELFDE PAGINA      Gebruik System Links → Menu Item Alias
Naar boven

15. Samenvatting

In Joomla is een menu-item veel meer dan alleen een link. Het is een volledige paginadefinitie die bijna elke laag van het systeem beïnvloedt:

  • Routing: de URL en de canonieke link.
  • Weergave: de layout, de template style en de getoonde modules.
  • Configuratie: paginatitel, metadata, page class en robotsinstellingen.
  • Toegang: wie de pagina kan zien en gebruiken.
  • Taal: de koppeling met de meertalige variant.
  • Context: de Itemid die alles met elkaar verbindt.

Een goed doordachte menustructuur bespaart tijd, voorkomt fouten en maakt een Joomla-website jarenlang eenvoudiger te onderhouden. Een slechte menustructuur veroorzaakt problemen die meegroeien met de site: kapotte URL's, verkeerde modules, verwarrende canonicals en SEO-problemen.

Ben je een nieuwe Joomla-website aan het plannen, migreer je vanaf een oudere versie of vermoed je dat de huidige navigatiestructuur problemen veroorzaakt, dan loont het om vroeg naar de menu's te kijken. Begrijp je menu-items, dan begrijp je Joomla.

Naar boven
Menu's in Joomla
Peter Martin

Joomla en Linux specialist voor snelle, veilige en schaalbare websites.