我在使用wordpress ajax拉出整页而不是模板部分时遇到了麻烦。查询不是在监听get_template_part()并且正在加载整个页面。
<?php
function category_loader() {
$cat_name = $_GET['category_name'];
query_posts(array('category_name'=> "cat_name", "order" => 'DESC'));
$output = '';
while (have_posts()) : the_post();
get_template_part( 'content', "categoryloaders");
endwhile;
wp_reset_query();
die($output);
} // end my_custom_handler
add_action( 'wp_ajax_nopriv_category_loader', 'category_loader' );
add_action( 'wp_ajax_category_loader', 'category_loader' );
?>
$(function() {
var ajaxurl = decodeURIComponent(ajaxurl);
$(".cat-checkbox").change(function() {
if(this.checked) {
$('#primary').html("loading....")
var the_cat = $(this).val();
var data = {
action: 'category_loader',
category_name: the_cat
};
$.ajax({
type: "GET",
url: "ajaxurl",
data: data,
success: function(data){
$("#primary").html(data);
}
});
}
else {
alert($(this).val() + ' is unchecked');
}
});
});
我的输出可以在这个page看到,它不是任何形式的广告,但这真的让我感到困惑。任何帮助都会很棒!