WordPress pagination fix voor custom queries

8-04-2019

Als je een custom query gebruikt om WordPress posts te tonen loop je tegen het probleem aan dat de paginatie niet klopt (via bijvoorbeeld de the_posts_pagination() functie). De WordPress paginatie is namelijk gebaseerd op het hoofd query object (opgeslagen in $wp_query) en niet op jouw custom query object. Om dit probleem te tackelen kun je de volgende hack gebruiken:

// jouw custom query
$the_query = new WP_Query( $args );

// Pagination fix
$temp_query = $wp_query;
$wp_query   = NULL;
$wp_query   = $the_query;

if( $the_query->have_posts() ):

// Hier komt de loop, gevolgd door the_posts_pagination();

// Reset hoofd query object
$wp_query = NULL;
$wp_query = $temp_query;

Op deze manier sla je voordat je de loop begint het hoofd query object op in een tijdelijke variabele. Daarna vervang je het hoofd query object door jouw object. En uiteindelijk reset je het hoofd query object weer. Via deze manier krijg je de paginatie kloppend!

Specialisme

HTML5, CSS3, PHP, MySQL, JavaScript & Jquery, React, Responsive Design, SEO (zoekmachine optimalisatie), Social Media Marketing, webrichtlijnen

CMS / E-commerce

WordPress, TYPO3, Joomla, ProcessWire, Prestashop, WooCommerce, OpenCart, Virtuemart, osCommerce

Frameworks

Laravel, CakePHP, Extbase & Fluid (TYPO3), Twitter Bootstrap, Foundation Framework

Contact

Paulusland 9
1679GV Midwoud
(gemeente Medemblik)

E-mail: info@bartsalle.nl
Tel. : 06-43126237
KvK: 34252794

© 2022 Bart Sallé