Récupérer the_content() de WordPress avec jQuery
J’essaie de charger des images supplémentaires lorsque l’utilisateur clique sur un bouton. Pour le moment, j’ai la fonction suivante :
$('a').click(function(){
$( ".gallery-pop-up-container" )
.load( "wp-content/themes/fashion_detail/includes/single/gallery-pop-up.php");
});
et j’essaie de charger:
<div class="gallery-page">
<?php the_content(); ?>
</div>
Cependant, j’obtiens une erreur PHP, car je ne sais pas quelle est la fonction :
Fatal error: Call to undefined function the_content()
Quelle serait la meilleure façon pour moi de charger the_content()
?
Solution n°1 trouvée
Comme @GM l’a souligné, vous devez prélever l’impressionnante API AJAX. Dans l’exemple ci-dessous, nous lançons une requête au gestionnaire AJAX, avec le paramètre action=gallery_popup
.
$( "a" ).click(
function () {
$( ".gallery-pop-up-container" ).load( "/wp-admin/admin-ajax.php?action=gallery_popup" );
}
);
En réponse à cette requête, WordPress déclenchera une action du même nom, préfixée par wp_ajax_...
(ou wp_ajax_nopriv_...
si l’utilisateur actuel n’est pas connecté).
Donc, tout ce que nous faisons maintenant est de nous accrocher à ladite action et de sortir la partie modèle :
function wpse_137607_gallery_popup() {
get_template_part( 'includes/single/gallery-pop-up.php' );
exit;
}
add_action( 'wp_ajax_nopriv_gallery_popup', 'wpse_137607_gallery_popup' );
add_action( 'wp_ajax_gallery_popup', 'wpse_137607_gallery_popup' );
Et tu as fini!
0 commentaire