Come creo una paginazione AJAX in WordPress?

Come creo una paginazione AJAX in WordPress?

WordPress dispone di diverse funzioni per creare i link della paginazione dei post. Come possiamo aggiungere AJAX a questi link?

Per creare le varie pagine dei post, WordPress utilizza il file del tema dove è presente la paginazione. Quindi se siete nella home page, WordPress utilizzerà il file index.php o home.php, se siete invece in una categoria utilizzerà category.php e così via.

A voi interessa solo il contenitore HTML che racchiude il Loop dei post. Ad esempio:


<?php get_header(); ?>
<div id="content">
	<?php while( have_posts() ): // Loop
	    the_post();
	  endwhile;
	?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

In questo caso i post sono contenuti nell'elemento con ID content. Una volta individuati nel DOM i link della paginazione, possiamo scrivere il seguente codice jQuery:


(function( $ ) {
	$(function() {
		var $pagination = $( "#pagination" );
		if( $pagination.length ) {
			$( "a", $pagination ).on( "click", function( e ) {
				e.preventDefault();
				var url = $( this ).attr( "href" );
				$( "#content" ).load( url + " #content" );
			});
		}
	});

})( jQuery );

Specificando un selettore per il metodo .load() carichiamo solo i contenuti HTML di quell'elemento, ossia i post della pagina collegata al link.

Torna su