Hoe de berichten van vorige week in WordPress te tonen

Hoe de berichten van vorige week in WordPress te tonen / tutorials

Veel van onze lezers op beginnersniveau beginnen al snel hun WordPress-thema's aan te passen. Daarom hebben we een spiekbriefje met WordPress-thema om ze op weg te helpen. Dit brengt een aantal interessante uitdagingen voor nieuwe gebruikers. Zo'n lezer vroeg ons onlangs hoe we de berichten van vorige week in WordPress kunnen weergeven. Ze wilden gewoon een sectie toevoegen op hun startpagina met berichten van vorige week. In dit artikel laten we u zien hoe u de berichten van vorige week in WordPress kunt weergeven.

Voordat we u laten zien hoe u de berichten van de vorige week kunt weergeven, laten we eerst kijken hoe u de berichten van de huidige week kunt weergeven met behulp van WP_Query. Kopieer en plak de volgende code in het functie.php-bestand van uw thema of een sitespecifieke plug-in.

 functie wpb_this_week () $ week = datum ('W'); $ jaar = datum ('Y'); $ the_query = new WP_Query ('year ='. $ year. '& w ='. $ week); if ($ the_query-> have_posts ()): while ($ the_query-> have_posts ()): $ the_query-> the_post (); ?>        

In de voorbeeldcode hierboven hebben we eerst de huidige week en het huidige jaar ontdekt. Vervolgens hebben we die waarden in WP_Query gebruikt om berichten van de huidige week weer te geven. Nu hoef je alleen nog maar toe te voegen in je themabestand waar je de berichten wilt weergeven.

Dit was eenvoudig, nietwaar? Om de berichten van de vorige week weer te geven, hoef je alleen maar 1 van de waarde van de week af te lezen. Maar als dit de eerste week van het jaar is, dan krijgt u 0 voor de week en het huidige jaar in plaats van vorig jaar. Hier is hoe je dat probleem oplost.

 functie wpb_last_week_posts () $ thisweek = date ('W'); if ($ thisweek! = 1): $ lastweek = $ thisweek - 1; anders: $ lastweek = 52; stop als; $ jaar = datum ('Y'); if ($ lastweek! = 52): $ year = date ('Y'); anders: $ jaar = datum ('Y') -1; stop als; $ the_query = new WP_Query ('year ='. $ year. '& w ='. $ lastweek); if ($ the_query-> have_posts ()): while ($ the_query-> have_posts ()): $ the_query-> the_post (); ?>        

In de voorbeeldcode hierboven hebben we twee controles geplaatst. De eerste vink stelt de waarde van de laatste week in op 52 (wat de laatste week in een jaar is) wanneer de waarde van de huidige week 1 is. De tweede vink stelt de waarde van het jaar in op vorig jaar wanneer de waarde van de laatste week 52 is.

Om de posts van vorige week weer te geven, hoef je alleen maar toe te voegen naar het sjabloonbestand van uw thema waar u ze wilt weergeven. Of als u een shortcode wilt hebben zodat u deze aan een pagina of een widget kunt toevoegen, voegt u deze regel toe onder de bovenstaande code.

 add_shortcode ('lastweek', 'wpb_last_week_posts'); 

U kunt deze shortcode nu gebruiken in een bericht, pagina of widget zoals deze:

[vorige week]

Houd er rekening mee dat u WP_Query niet altijd nodig hebt om aangepaste query's te maken. WordPress wordt geleverd met een handvol functies om recente berichten, archieven, opmerkingen enz. Weer te geven. Als er een gemakkelijkere manier is om de bestaande functies te gebruiken, hoeft u niet echt uw eigen query's te schrijven.

We hopen dat dit artikel u heeft geholpen bij het weergeven van de berichten van vorige week in WordPress. Experimenteer met de code en pas deze aan om aan uw behoeften te voldoen. Laat het ons weten als je nog vragen hebt door hieronder een reactie achter te laten of bij ons op Twitter te komen.