Bovenaan de site, waar altijd Home, Diensten, Over ons en Contact stonden, staat nu niets. Of erger: er staat een lange rij met alle pagina’s die de site ooit heeft gehad, inclusief “Privacybeleid”, “Bedankt” en een testpagina uit 2019. Bezoekers vinden de weg niet meer, en u ook niet. Het enige wat er is gebeurd, is een update van het thema of een wissel naar een nieuw thema.

Een verdwenen WordPress-menu is een schrikmoment, maar het menu zelf is bijna nooit verdwenen. Wat er is gebeurd, is dat het menu is losgeraakt van de plek in het thema waar het hoort te staan. Dat is in enkele minuten hersteld. In dit artikel zet u het terug, en kijken we naar de paar gevallen waarin er wél meer aan de hand is.

Hoe WordPress menu’s koppelt

WordPress bewaart menu’s los van het thema. Onder Weergave → Menu’s maakt u een menu, met een naam en een lijst met items. Het thema heeft daarnaast een of meer menulocaties: hoofdmenu, footermenu, mobiel menu. De koppeling tussen menu en locatie is een aparte instelling, en juist die koppeling raakt kwijt bij een themawissel of bij bepaalde thema-updates. Het menu staat dan nog netjes in de lijst, maar aan geen enkele locatie toegewezen.

Wat de bezoeker vervolgens ziet, hangt van het thema af. Sommige thema’s tonen dan niets. Andere vallen terug op de standaardfunctie van WordPress die alle gepubliceerde pagina’s op een rij zet; vandaar dat rijtje willekeurige pagina’s.

Blokthema’s (Twenty Twenty-Four en nieuwer) werken anders: daar is het menu een navigatieblok in de site-editor. De oorzaken en oplossingen lijken op elkaar, maar de plek waar u kijkt verschilt. Dat behandelen we apart.

Stap 1: het menu opnieuw koppelen

  1. Ga naar Weergave → Menu’s. Bij een blokthema ziet u dit menu-item niet; ga dan naar stap 4.
  2. Kies bovenaan in het uitklapmenu het menu dat u wilt terugzetten (vaak “Hoofdmenu” of de naam van uw bedrijf) en klik op Selecteren.
  3. Scrol naar beneden naar Menu-instellingen en vink onder Weergavelocatie de juiste locatie aan, meestal Primair of Hoofdmenu.
  4. Klik op Menu opslaan en bekijk de site.

Werkt het menu op desktop maar niet op mobiel, of andersom, dan heeft het thema aparte locaties voor beide. Vink dan ook de mobiele locatie aan of gebruik hetzelfde menu voor beide.

Sneller gaat het via het tabblad Locaties beheren bovenaan dezelfde pagina. Daar staat elke locatie van het thema met een uitklaplijst ernaast. Kies per locatie het gewenste menu en sla op.

Stap 2: als het menu er echt niet meer is

Staat er onder Weergave → Menu’s helemaal geen menu in de lijst, dan is het wel verwijderd. Dat gebeurt door een verkeerde klik op “Menu verwijderen”, door een opruimplugin, of door het terugzetten van een oude database. Twee routes:

  • Terughalen uit een back-up. Menu’s staan in de database, in de tabellen voor termen en berichten. Een specialist haalt alleen die gegevens uit de back-up zonder de rest van de database te overschrijven. Doe geen volledige databaseherstel voor alleen een menu; u verliest dan alles wat sindsdien is gewijzigd.
  • Opnieuw maken. Bij een menu van tien items is dat sneller dan een back-up. Klik op “Maak een nieuw menu”, voeg pagina’s toe vanuit het linkerpaneel, sleep ze in de juiste volgorde (inspringen maakt submenu’s), koppel de locatie en sla op.

Stap 3: wanneer een plugin of pagebuilder het menu beheert

Bij veel sites wordt de header niet door het thema getoond maar door een pagebuilder: Elementor Pro, Divi Theme Builder, de header-builder van Astra of Kadence. Het menu in de header is dan een widget of module met een eigen instelling die naar een WordPress-menu wijst. Na een update van de pagebuilder kan die instelling leeg zijn.

Open de header in de betreffende builder, klik op het navigatie-element en controleer welk menu is geselecteerd. Kies het juiste menu en werk de header bij. Controleer daarna ook of de header-template nog aan de juiste voorwaarden is gekoppeld (“hele site” of alleen bepaalde pagina’s); ook die instelling raakt weleens kwijt.

Ziet u helemaal geen header meer, dan is de kans groot dat de pagebuilder zelf niet goed is geladen na de update. Dat is dan geen menuprobleem maar een breder probleem; kijk in ons stappenplan voor een site die na een update niet meer werkt.

Stap 4: menu’s in een blokthema

In blokthema’s zit het menu in een navigatieblok in de site-editor (Weergave → Editor). Na een thema-update kan het navigatieblok in het sjabloon zijn teruggezet naar een lege of standaardversie. Open de site-editor, klik op de header, selecteer het navigatieblok en kies in het zijpaneel bij “Menu” het menu dat u eerder had. Menu’s die in de site-editor zijn gemaakt, worden bewaard als aparte navigatie-items en zijn terug te vinden onder Weergave → Editor → Navigatie.

Is de hele header gewijzigd, controleer dan of het thema-sjabloon is overschreven en zet uw eigen versie terug via de revisies van het sjabloon (klik op het sjabloon en kies in het paneel voor de eerdere versie).

Voorkomen dat het menu weer verdwijnt

  • Maak vóór een themawissel of grote thema-update een screenshot van de menupagina met de locaties. Dan weet u in één oogopslag wat waar hoorde.
  • Test themawissels op een staging-kopie, niet op de live site.
  • Geef menu’s een duidelijke naam (“Hoofdmenu NL”, “Footer diensten”) in plaats van “Menu 1”.
  • Gebruik een child-thema als de webbouwer menulocaties heeft toegevoegd in de themacode; anders verdwijnen die locaties bij de volgende update en daarmee de koppeling.
  • Zorg dat er een recente back-up is die ook de database bevat.

Een tandtechnisch laboratorium in Groningen kwam bij ons omdat na een thema-update het hoofdmenu was vervangen door 34 pagina’s op één rij. De koppeling opnieuw zetten duurde een minuut. Het opruimen van de 34 pagina’s die blijkbaar al jaren “gepubliceerd” waren zonder dat iemand het wist, kostte een uur. Wie zulke zaken liever laat regelen, kan een verdwenen menu prima als losse klus aanbieden bij een WordPress-bugfixer; het is een typische klus die binnen een uur klaar is.

Conclusie

Een verdwenen menu is bijna altijd een losgeraakte koppeling. Ga naar Weergave → Menu’s, wijs het menu toe aan de juiste locatie en sla op. Beheert een pagebuilder de header, kijk dan in de header-instellingen van die builder. In een blokthema zit het in het navigatieblok van de site-editor. Is het menu écht weg, dan zit het in de back-up. En voortaan: een screenshot van de menupagina vóór elke themawijziging.