Attualmente sto caricando un singolo post utilizzando Ajax. Mentre il caricamento del post funziona correttamente, non riesco a caricare i commenti. Ecco il mio codice:
Il mio javascript per caricare il post:
<script>
$(".view_post").click(function(e) {
e.preventDefault();
postid = $(this).attr("rel");
$.ajax({
url:"/wp-admin/admin-ajax.php",
type:'POST',
data:'action=posts_open&postid='+postid,
success: function(html){
$("#b_contentwrapper").empty();
$("#b_contentwrapper").append(html);
}
});
});
</script>
Il javascript passa attraverso funzioni.php in questo modo:
function implement_posts()
{
//<?php
get_template_part( 'loop', 'single' );
die();
}
Ora ecco il codice in cui carico effettivamente il contenuto del mio post:
<?php
$linkid = "p=".$_POST["postid"];
$posti = new WP_Query($linkid);
$posti->the_post();
echo "Time: ";
the_time('F jS, Y');
echo "<br />";
the_category(', ');
echo "<br />";
the_title();
echo "<br />";
the_content();
echo "<br />";
comment_form();
?>
</div>
<?php if (have_comments()) {
echo "Comments ok";
}
else
{
echo "No comments";
}
?>
Ora, anche per i post con commenti, visualizzo "Nessun commento". Tutto il resto funziona correttamente. Qualcuno può darmi una mano?
Grazie.
$linkid = "p=".$_POST["postid"];
non è sicuro per l'iniezione sql sicura. anche se wordpess lo controlla, potresti volerlo fare da solo.