برای صفحات دسته بندی مطالب که از کوئریهای سفارشی استفاده نمیکنیم باید چطوری لود مور پیاده کرد؟
من این کد رو نوشتم ولی مقداری که برای متغیر html برمیگردونه یک رشته خالی هست.
<?php
add_action('wp_ajax_category_load_more','category_load_more');
add_action('wp_ajax_nopriv_category_load_more','category_load_more');
function category_load_more()
{
$html_outpout = '';
if (have_posts()): ?>
<?php while (have_posts()):
the_post();
$html_outpout .= '
<div class="col-sm-6 col-lg-3">
<div class="card mb-4">
<div class="card-fold position-relative"></div>
<div class="card-body px-0 pt-3"> <h2 class="card-title"><a href="' . get_permalink() . '" class="btn-link text-reset stretched-link">' . the_title() . '</a></h2>
<ul class="nav nav-divider align-items-center small">
<li class="nav-item"></li>
<li class="nav-item">' . get_the_date() . '</li>
</ul>
</div>
</div>
</div>
';
endwhile;
else: ?>
<div class="alert-no-post">هنوز مطلبی در این دسته بندی وجود ندارد.</div>
<?php
endif;
var_dump($html_outpout);
wp_send_json([
'content'=> $html_outpout,
'success'=> true,
], 200);
}
خروجی ایجکس من هم این طوری شده:
<div class="alert-no-post">هنوز مطلبی در این دسته بندی وجود ندارد.</div>
{"content":"","success":true}
اصلا وارد حلقه نمیشه که بخواد کانتنت رو ذخیره کنه. دلیلش چیه؟
برای گرفتن صفحه بندیها و تعداد مطالب هر دسته بندی هم اومدم روی دکمه لود مور از دیتا اتربیوتها استفاده کردم. اینطوری:
این کارم درسته؟ ممنون میشم راهنمایی کنین.
<?php global $wp_query; ?>
<div class="col-12 text-center mt-5">
<button id="category-load-more" type="button" class="btn btn-primary-soft" data-page="<?php echo get_query_var('paged') ? get_query_var('paged') : 1;?>" data-max="<?php echo $wp_query->max_num_pages; ?>">مشاهده بیشتر <i class="bi bi-arrow-down-circle align-middle ms-2"></i></button>
</div>