Veel voorkomende WordPress problemen eindelijk opgelost!
Inleiding
WordPress is het meest gebruikersvriendelijke Content Management Systeem wat ik ken. Toch kan er ook in een ‘perfecte situatie’ wel eens iets fout gaan. En als dat gebeurt, is het natuurlijk fijn, wanneer je het zelf op kunt lossen.
Daarom sta ik met jou even stil bij vijf veel voorkomende WordPress problemen en de manier waarop je deze kunt oplossen.
Cannot modify headers melding
Waar je ook in WordPress zit, deze melding kan zowel in het Admin-Dashboard als op de website zelf voorkomen. De oorzaak is altijd een fout van de programmeur… Iedere webpagina bestaat uit twee onderdelen: De headers, de informatie die vooral bedoeld is voor de browser en andere programma’s die de pagina verwerken, en de daadwerkelijke informatie op de pagina zelf. Deze informatie wordt netjes in volgorde aangeboden: Eerst de headers, dan de content. Nu gebeurt het soms, dat een plugin ‘voor zijn beurt gaat praten’, er wordt namelijk content verzonden, voor WordPress klaar is met het versturen van de headers. In veel gevallen is het een stom slordigheidsfoutje: Een PHP programma eindigt namelijk met ?> en daarna mag er geen uitvoer meer voorkomen. Staat hier per ongeluk toch een spatie (of een ander teken) achter, dan denkt jouw browser dat de uitvoer voor de gebruiker al begonnen is. Krijgt hij daarna nog meer ‘headers’ te verwerken, raakt hij in de war. En daarom waarschuwt PHP alvast, dat er iets fout is gegaan. Gelukkig staat er bij de melding ook altijd de oorzaak van het probleem: Het bestand wat deze melding veroorzaakt. Met een FTP programma en een goede programma editor kun je dit oplossen. Of de maker van de plugin gewoon even wijzen op deze fout.
Een andere oorzaak kan zijn, dat een plugin een waarschuwing veroorzaakt, die zorgt voor uitvoer. Bijvoorbeeld ‘Function xyz_abc requires 3 parameters‘. Dit probleem kun je niet zomaar zelf oplossen. Want hier heeft de programmeur gewoon een fout gemaakt. Vaak is deze ‘fout’ echter het gevolg van een verandering in de programmeertaal achter WordPress, PHP, zelf. Vroeger had zo’n functie bijvoorbeeld 2 parameters nodig, en er is een derde bijgekomen. De ‘Waarschuwing’ is een dienst aan de programmeur, zodat hij weet dat hij iets heeft op te lossen. Alleen helaas, jij bent die programmeur niet en jij zit nu wel mooi met de gebakken peren. Gelukkig is dit ook oplosbaar, maar… het is een gevaarlijke oplossing. Jij weet immers niet, wat er zal gebeuren als je dit probleem zomaar negeert. Dus goed testen na het implementeren van deze oplossing is van groot belang.
In je hoofdfolder voor WordPress staat het bestandje ‘wp-config.php’. Als je dit opent, zie je als het goed is als laatste rege :
require_once(ABSPATH . 'wp-settings.php');
Onder deze regel voeg je onderstaande regel in. Het beste kun je het gewoon kopieren en plakken, dan weet je zeker, dat je niets vergeet:
error_reporting(0);
Wat je nu eigenlijk hebt gedaan, is alle foutmeldingen die vanuit de programmeertaal gegeven worden uit gezet. Dit is ongeveer even effectief als een auto alarm wat je niet aanzet, omdat het af en toe ten onrechte afgaat. Wat je dus altijd doet, is deze fout melden aan de maker van de plugin en zodra hij meldt, dat dit is opgelost, verwijder je deze regel weer uit je wp-config.php bestand!
Ik heb net een nieuw thema en de foto’s op mijn site zien er niet meer uit!
Je hebt net zo’n prachtig ‘Premium’ thema gezien, waarvan jij gelijk dacht: Dat wil ik ook! Bijvoorbeeld zo’n mooi thema, wat aan de kop van je blogpost de gebruikte foto laat zien als een soort header. Prachtig, dat was nu precies waar je altijd naar zocht. Wanneer je echter dit thema hebt geinstalleerd, is het een grote nachtmerrie: De foto’s staan er wel, maar ingedikt, uitgetrokken… het lijkt alsof je blogt over de lachspiegelgallerij op de kermis. De maker van het thema is er namelijk van uit gegaan, dat alle binnen het thema bepaalde afmetingen hebben. En het thema zorgt, dat nieuw geüploade foto’s ook in dat formaat worden opgeslagen. Gelukkig is er een plugin die deze actie voor je uitvoert. Regenerate Thumbnails is namelijk in staat te bepalen welke formaten er allemaal nodig zijn voor jouw afbeeldingen en maakt deze alsnog aan.
Briefly unavailable for scheduled maintenance / Tijdelijk niet beschikbaar vanwege gepland onderhoud
Het zal je maar overkomen. Je bent bezig met je plugins te upgraden en plotseling gaat er iets fout. Tot overmaat van ramp is je site onzichtbaar geworden. Op een volkomen witte pagina staat alleen ‘Tijdelijk niet beschikbaar vanwege gepland onderhoud’ of een anderstalige variant hiervan. En hoe lang je ook wacht, de melding wil maar niet verdwijnen.
Tijdens het updaten van plugins, thema’s of WordPress zelf wordt er een bestandje met de naam .maintenance op de server geplaatst. Als een bezoeker namelijk iets doet, terwijl een plugin net wordt aangepast, kun je de meest verrassende resultaten krijgen. Om dit te voorkomen is de site dus even niet beschikbaar. Na een update wordt normaliter dit bestand weer verwijderd. Maar wanneer er iets fout gaat, gebeurt dit natuurlijk niet. Om alles weer ok te krijgen, hoef je alleen het bestandje .maintenance met FTP te verwijderen en eventueel het upgraden van de plugins af te ronden.
Bij het delen in Social Media wordt mijn blogpost niet (goed) gedeeld.
Ok, voor dit probleem zijn tientallen oorzaken te bedenken en we beperken ons in dit geval alleen tot de meest voorkomende. Want op het moment, dat jij probeert een blogpost te delen via bijvoorbeeld Facebook dan zal Facebook die pagina opvragen en de gegevens lezen. Wanneer jij echter ook een beveiligingsplugin actief hebt, kan het zijn, dat jouw beveiligingsplugin denkt, dat er sprake is van een aanval op de site. Dit kan bijvoorbeeld omdat je hebt ingesteld, dat er maximaal een x aantal malen binnen een bepaalde tijd een pagina opgevraagd mag worden. Het is zelfs mogelijk, dat op grond van diezelfde beveiligingsregels WordPress heeft besloten dat IP helemaal te blokkeren. Jij zegt dus eigenlijk zelf tegen Facebook: Beste Facebook, jij mag deze informatie niet lezen!
De oplossing? Zorg ervoor, dat je beveiligingsplugin niet teveel restricties oplegt aan de toegang tot jouw pagina’s door de Social Media.
Heb je overigens deze blokkering opgelost, zul je merken, dat het nog steeds niet werkt: Facebook en andere social media bufferen namelijk de informatie en pas na het verstrijken van deze buffertijd komt de informatie gewoon beschikbaar.
De ‘mooie permalinks’ doen het niet!
Een url als iet er natuurlijk niet uit. Je wilt het liefst, dat er een keurige naam komt te staan. En je weet ook precies hoe dit moet, omdat je een trouw volger van deze blog bent. Maar om de een of andere reden, krijg jij dit maar niet aan de praat. Op het moment dat jij netjes de juiste URL hebt ingesteld, blijft echter de melding komen, dat de pagina niet gevonden kan worden. Dit kan een aantal oorzaken hebben.
- Jouw hoster ondersteund ‘mod_rewrite’ niet.
Om de mooie URLS mogelijk te maken, moet op de server een stukje programmatuur geinstalleerd zijn, wat ‘mod_rewrite’ heet. ALS het waar is, dat jouw hoster dit stukje programmatuur niet geinstalleerd heeft staan, dan kan ik je maar een enkel advies geven: Wegwezen! Waarschijnlijk is jouw hoster gevestigd in een plaats waar ’s avonds de lantaarnopsteker nog langskomt om de straatverlichting aan te doen. - Je kan geen .htaccess bestand schrijven
Dat kan te maken hebben met de rechten die je op de server hebt. Er zijn vele oorzaken van het probleem mogelijk en er zijn vele oplossingen voor. De helpdesk van je hosting bedrijf kan je hier verder mee helpen. - ‘Het’ heeft altijd gewerkt en ‘het’ doet het plotseling niet meer!
En waarschijnlijk heb je ook net een nieuwe plugin of een nieuw thema geinstalleerd! Als je namelijk ‘iets’ hebt geinstalleerd, wat een nieuw ‘custom post type’ aan je site toevoegt (als je weet wat het is, is het mooi meegenomen, weet je het niet, moet je je vooral niet dom voelen. Voel je eerder blij, dat je zonder ballast door het leven gaat!) En WordPress is nu even in de war geraakt, hoe bepaalde links afgehandeld moeten worden. Het is voldoende om gewoon even naar ‘Permalinks’ in de instellingen te gaan en op de ‘Opslaan’ knop te klikken. WordPress slaat de gegevens op en bouwt het hele permalink schema opnieuw op.
‘Hij’ doet ‘het’ nog steeds niet!
Wanneer je een van deze problemen hebt en de aangegeven oplossing werkt niet, dan kan de oorzaak ook dieper liggen. Of misschien ben je tegen een probleem aangelopen, wat ik helemaal niet heb aangekaart. In onderstaand commentaar kun je meer informatie geven over jouw probleem en kunnen we zien, of we dit voor jou op kunnen lossen. Heb je haast, of meer problemen te verwerken? Een Support Strippenkaart kan dan de juiste oplossing voor je zijn. En alleen in september 2014 nog geldt het kortingstarief van 197 euro voor 5 uur!