Если я например нахожусь на какой-то категории в post_type faqs и хочу вывести из этой категории посты относящийся к ней. то выводятся только посты из всего post_type faqs. Как сделать c помощью load_more, чтобы выводились посты из категории на которой я нахожусь?
<div class="page-faq__dropdowns" id="ajax-posts">
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 0;
$postsPerPage = 6;
$postOffset = $paged * $postsPerPage;
$args = array(
'post_type' => 'faqs',
'posts_per_page' => $postsPerPage,
'offset' => $postOffset,
'tax_query' => array(
array(
'taxonomy' => 'tuts_faq_tax',
'field' => 'slug',
'terms' => $term->slug
)
),
);
$loop = new WP_Query($args);
if ($loop->have_posts()) {
while ($loop->have_posts()) {
$loop->the_post();
get_template_part('template-parts/faqs/faq');
}
}
wp_reset_postdata();
?>
</div>
<a href="#!" id="load-more" class="btn btn-primary">load more</a>
<script type="text/javascript">
jQuery(document).ready(function($) {
var ppp = 6;
var pageNumber = 1;
var cat_id = '<?php echo $term->name; ?>';
function load_posts() {
pageNumber++;
$.ajax({
type: "POST",
dataType: "html",
url: my_ajax_object.ajax_url,
data: {
action: 'more_post_ajax',
pageNumber: pageNumber,
category: cat_id,
},
success: function(data) {
var $data = $(data);
if ($data.length) {
$("#ajax-posts").append($data);
$("#load-more").attr("disabled", false);
} else {
$("#load-more").hide();
}
},
error: function(jqXHR, textStatus, errorThrown) {
console.log('Error')
}
});
return false;
}
$("#load-more").on("click", function(e) {
$("#load-more").attr("disabled", true);
load_posts();
});
});
</script>
Пытался добавить 'tax_query' в функцию more_post_ajax, но кнопка при нажатии просто исчезает. Буду благодарен за любую помощь.
function more_post_ajax()
{
$ppp = (isset($_POST["ppp"])) ? $_POST["ppp"] : 6;
$page = (isset($_POST['pageNumber'])) ? $_POST['pageNumber'] : 0;
$category = $_POST['category'];
header("Content-Type: text/html");
$args = array(
'suppress_filters' => true,
'post_type' => 'faqs',
'posts_per_page' => $ppp,
'post_status' => 'publish',
'paged' => $page,
'tax_query' => array(
array(
'taxonomy' => 'tuts_faq_tax',
'field' => 'slug',
'terms' => $category
)
),
);
$loop = new WP_Query($args);
if ($loop->have_posts()) : while ($loop->have_posts()) : $loop->the_post();
get_template_part('template-parts/faqs/faq');
endwhile;
endif;
wp_reset_postdata();
die;
}
add_action('wp_ajax_nopriv_more_post_ajax', 'more_post_ajax');
add_action('wp_ajax_more_post_ajax', 'more_post_ajax');