Laat jouw WordPress Content automatisch verlopen. En dat op een intelligente manier!
Deze blogpost is een complete rewrite van de blogpost over de ‘Post Expirator’ plugin uit 2017
Het is natuurlijk leuk om te geloven dat alles wat je schrijft eeuwigheidswaarde heeft, maar de realiteit is natuurlijk niet zo. Wanneer ik vandaag een blogpost schrijf over ‘wat nieuw is in WordPress 5.9’ zal deze blogpost 2 jaar na vandaag alles behalve actueel zijn.
Gebruik ik mijn blog ook voor nieuwsberichten, dan is dat nog veel sterker het geval. Post jij bijvoorbeeld een bericht, dat je over drie weken met een stand op een beurs zal staan, is dat één dag na het sluiten van die beurs al oud nieuws.
Dit soort berichten wil je natuurlijk het liefst zo snel mogelijk van je site hebben, om jouw bezoeker de kans te geven makkelijker te vinden, wat werkelijk voor hem van belang is.
Dat kan je natuurlijk heel actief doen, door het dagelijks bij te houden, maar hoe meer je schrijft, hoe moeilijker dat uiteindelijk wordt.
Gelukkig is er een plugin die je hierbij kan helpen.
PublishPress Future
PublishPress Future is een gratis plugin. Heel vroeger heette deze plugin ‘Post Expirator’. En hoewel deze plugin nog prima functioneerde, was deze al een paar jaar niet meer actief beheerd, tot de makers van de PublishPress plugin het beheer overnamen. En ze namen niet alleen het beheer over, maar voegden ook een groot aantal nuttige functies toe aan de plugin.
De oorspronkelijke ‘Post Expirator’ plugin was eigenlijk super simpel. Bij ieder post type werd een extra veld toegevoegd, waar je in kon geven, wanneer jouw post ‘niet meer geldig’ zou zijn. Op het moment dat de ‘geldigheidsdatum’ was verlopen, werd je post automatisch van ‘Published’ op ‘Private’ of ‘Draft’ (Concept) gezet afhankelijk van de algemene instellingen.
Zoiets als je op de afbeelding hieronder kan zien :
In de PublishPress Future plugin is dat enigszins uitgebreid. Want nu kan je per post zelf kiezen op wat voor manier je het wilt laten verlopen:
Met deze plugin laat je nog steeds je WordPress content automatisch verlopen, maar je hebt behoorlijk wat meer opties. Wanneer we namelijk kijken naar de mogelijkheden onder ‘vervalmethode’ zien we hier behoorlijk wat mogelijkheden.
Concept
Op het moment dat je de vervaldatum hebt bereikt, zal de post automatisch in ‘concept’ geplaatst worden. Dit wil zeggen, dat het voor niemand zichtbaar meer is, maar nog wel makkelijk bereikbaar via het dashboard
Verwijderen
Op het moment dat je de vervaldatum hebt bereikt zal de post automatisch verwijdert worden. Het is dus voor iedereen helemaal verdwenen.
Prullenbak
Op het moment dat je de vervaldatum hebt bereikt zal de post in de prullenbak worden geplaatst. Heb je bepaalde plugins actief, die de prullenbak periodiek leegmaken, zal het na verloop van tijd fysiek worden verwijderd, maar tijdelijk is het nog bereikbaar.
Privé
Het bericht zal bij het bereiken van de vervaldatum op ‘Private’ worden gezet, wat wil zeggen, dat je als beheerder of editor de post nog steeds aan de frontend van de site zal zien, maar de ‘gewone’ bezoeker zal dit niet zien.
Stick
De post wordt op de vervaldatum tot een ‘sticky post’ gemaakt en op overzichten waar ‘sticky posts’ actief zijn aan de top worden geplaatst. Zelf kan ik mij niet voorstellen, wanneer ik dit zou willen.
Unstick
De post wordt op de vervaldatum van ‘sticky post’ tot ‘normale post’ gemaakt en zal niet langer aan top komen te staan. Dit kan bijvoorbeeld nuttig zijn om bepaalde posts tijdelijk extra aandacht te geven.
Categorie: Vervangen
De huidige categorie (let op: Dit werkt dus alleen bij één categorie bij een post!) wordt vervangen door de categorie die je kiest. Dit kan je bijvoorbeeld gebruiken wanneer je twee categorieën zou hebben voor je nieuws : ‘Nieuws’ en ‘Nieuws archief’. Op het moment dat jouw bericht geen ‘nieuws’ meer is, wordt het automatisch verplaatst naar het ‘Nieuws archief’.
Categorie: Toevoegen
Dit werkt in grote mate hetzelfde als ‘Categorie vervangen’, behalve dat het alle bestaande categorieën laat bestaan, maar een extra categorie toevoegt.
Wil je bijvoorbeeld jouw blog opdelen in berichten die ‘actueel’ zijn en berichten die niet meer ‘actueel’ zijn, dan zou je aan de categorieën ‘Archief’ toe kunnen voegen. Werk je bijvoorbeeld met Elementor, waar je in posts listings makkelijk bepaalde categorieën uit kan sluiten, kan je daarmee voorkomen, dat niet actuele berichten in post listings op je homepage komen te staan.
Categorie: Verwijderen
En deze functie spreekt nu natuurlijk ook helemaal voor zich. Heeft jouw bericht meerdere categorieën, dan kan je hier aangeven welke categorie je eventueel automatisch wilt verwijderen.
Geen ‘opeenvolgende acties’.
Wat je niet kan doen met deze plugin is een aantal acties elkaar automatisch op laten volgen. Dus bijvoorbeeld :
- Na één maand na publicatie wil ik dat de post ‘Sticky’ wordt
- Twee maanden na publicatie moet hij weer ‘unsticky’ worden
- Een half jaar na publicatie moet er de categorie ‘Archief’ aan toegevoegd worden en
- Een jaar na publicatie moet de post automatisch verwijderd worden.
Maar de plugin doet nog meer!
De bovengenoemde instellingen zijn de instellingen die je per post in kan geven, wanneer je je post schrijft. Maar je kan nog meer met deze plugin. Ik ga hierbij niet in op alle mogelijkheden. Dit is een bespreking, geen handleiding, maar een aantal belangrijke opties wil ik toch graag de revue laten passeren.
Standaard datum/tijd looptijd
De eerste is de mogelijkheid om een standaard voor de datum/tijd voor de verlooptijd in te stellen. Hoe lang moet een specifieke post per default bewaard blijven?
Hier heb je drie opties. De eerste optie is ‘Geen‘. Hiermee geef je aan, dat in principe een post niet zal vervallen, tenzij je een specifieke datum ingeeft.
De tweede optie is ‘Aangepast‘. En deze is tricky. Je kan hier namelijk ‘natuurlijke taal’ gebruiken. En hierboven in de toelichting zie je de tekst : “Stel de aangepaste waarde in die moet worden gebruikt voor de standaardvervaldatum. Zie PHP strtotime function voor informatie over opmaak. Je kunt bijvoorbeeld +1 maand of +1 week 2 dagen 4 uur 2 seconden of volgende Donderdag invoeren.”
Dat lijkt natuurlijk aardig duidelijk. Maar helaas. Het is ook fout, door een overijverige vertaler. Want ‘+1 maand’ zal niet werken. +1 month wel. Denk er vooral aan, dat alleen Engelse termen werken. En welke Engelse termen werken, kan je hier vinden.
Door de juiste term in te geven, zal ook de juiste default datum worden berekend. Als ik bijvoorbeeld ‘+3 months’ ingeef, zal de datum drie maanden na de huidige liggen.
De derde optie is tamelijk onzinnig. ‘Bericht/Pagina publicatie tijd‘ wil namelijk zeggen, dat je post vervalt direct op het moment, dat deze gepubliceerd is. Ik kan mij geen situatie voorstellen, waarin je dat zou willen.
E-mailadres voor meldingen
Hier kan je aangeven wie een bericht moeten ontvangen, wanneer een post gedeactiveerd/gewijzigd wordt. Door het eerste veld de activeren krijgt de oorspronkelijke poster bericht, door het tweede veld te activeren krijgen de beheerders een bericht en door email adressen in het laatste veld in te geven, krijgen extra gebruikers een bericht.
Dit kan bijvoorbeeld handig zijn, wanneer je in een post een cursus aankondigt. Door bericht te krijgen, dat de huidige datum is verstreken, kan je de post eventueel aanpassen door een nieuwe cursus te plannen.
Tonen
Onder het tabblad tonen kan je aangeven hoe een regel tekst onder aan de post getoond moet worden, om aan te geven, wanneer een post verloopt. Persoonlijk kan ik maar één nuttig gebruik van deze optie voorstellen en dat is voor producten. Wanneer de verkrijgbaarheid van een product aan een einddatum is gekoppeld, kan het nuttig zijn om deze ook te tonen.
Wat hierbij wel jammer is, is dat de enige mogelijkheid is, om deze tekst in de footer te tonen. Zelf had ik het fijn gevonden deze tekst ook op een specifieke plaats binnen het product te tonen. Bijvoorbeeld direct onder de productprijs een tekst als : “Dit product is vanaf (datum) niet meer verkrijgbaar, dus wees er snel bij”.
Berichttypen
Je hebt inmiddels de standaard instellingen ingegeven die voor alle post gelden, maar je kan per berichttype nog afwijkende instellingen ingeven.
Stel je voor. Je hebt voor je meeste post typen aangegeven, dat ze niet moeten vervallen. Maar je hebt een site die zich gespecialiseerd heeft op het aanbieden van vacatures en -wanneer niet eerder aangegeven, dat een vacature is vervuld, wil je dat deze standaard na 3 maanden wordt gedeactiveerd. In zo’n geval geef je aan, dat je ‘standaard’ is, dat posts niet hoeven te vervallen, maar bij het posttype ‘vacature’ deze na 3 maanden ‘concept’ moet worden… (om deze eventueel aan te passen en opnieuw te posten).
Per berichttype heb je een blok als onderstaand om specifiek in te vullen:
Hier kan je dus specifiek aangeven wat er voor dit post type moet gelden. In dit voorbeeld geef ik dus aan, dat voor het post type ‘Vacature’ moet gelden, dat na 3 maanden de vacature als ‘concept’ moet worden gedeactiveerd.
Conclusie
Soms heb je post typen die moeten komen te vervallen. En het is natuurlijk handig, wanneer je dat niet zelf bij hoeft te houden. Ik was in het verleden al gecharmeerd van de voorloper van deze plugin (Post Expirator), maar de uitbreidingen die door PublishPress zijn toegevoegd maken deze plugin nog veel waardevoller.
En het leuke is, dat op het moment van het schrijven van deze blogpost de plugin nog steeds gratis is. Ik heb geen idee of dit zo blijft, omdat PublishPress wel een geschiedenis heeft van gratis producten plotseling betaald te maken.
Blijf bij!
Er zijn zoveel mogelijkheden met WordPress, maar het kost behoorlijk wat tijd om te ontdekken, wat er eigenlijk allemaal mogelijk is. Gelukkig voor jou blog ik inmiddels alweer meer dan 10 jaar over alle mogelijkheden van WordPress. Neem een voorsprong op je concullega’s en zorg ervoor, dat je altijd bij blijft door je te abonneren op de nieuwsbrief van WordXPression door hieronder je gegevens in te vullen, of abonneer je op de Browser Push berichten door op de rode bel linksonder op de pagina te klikken en de instructies te volgen.
Gun jezelf de omzet die je verdient!