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.