我需要对Wordpress进行分页才能使用AJAX。因此,当访问者点击"older entries"
时,不会重新加载该页面以显示较旧的帖子。
我已经在这里找到了解决方案。但问题是,它每次都会加载相同的帖子。
这是我的问题:
<ul class="recipe-list">
<?php
$home_rcp = $redux_imd['home_rcp'];
$rcpquery = new WP_Query(array(
'cat'=> $home_rcp,
'posts_per_page' => 4
));
while ($rcpquery->have_posts()) : $rcpquery->the_post();
?>
<li>
<?php the_post_thumbnail('recipe-thumb'); ?>
<div class="caption">
<div class="blur"></div>
<div class="caption-text">
<div class="post-title">
<h5><?php the_title() ?></h5>
</div>
<div class="recipe-home-meta">
<p>Posted on
<?php the_time('Y/m/d'); ?> By
<?php the_author(); ?>
</p>
</div>
<a href="<?php the_permalink() ?>" rel="bookmark">
SEE THIS RECIPE
</a>
</div>
</div>
</li>
<?php endwhile; ?>
<div id="pagination">
<?php next_posts_link( '« Older Entries', $rcpquery->max_num_pages) ?>
<?php previous_posts_link( 'Newer Entries »') ?>
</div>
</ul>
这是我的AJAX代码:
$('.recipe-list').on('click', '#pagination a', function (e) {
e.preventDefault();
var link = $(this).attr('href');
$('.recipe-list').fadeOut(500, function () {
$(this).load(link + ' .recipe-list', function () {
$(this).fadeIn(500);
});
});
});
我在这里做错了什么?
答案 0 :(得分:1)
$ redux_imd
肯定会抛出错误。因此,您将不会收到另一页。
答案 1 :(得分:0)
根据您添加的wordpress代码段,似乎您每次点击下一页到最后一页时总是加载前4个项目应该是下一个项目。
从网址获取网页编号并尝试使用
之类的内容$ wp_query-&GT;查询(&#39; posts_per_page = 10&#39;&#39;&安培;寻呼=&#39; $分页)
基本上你必须在wp_query中添加另一个参数
paged => $paged;
也可以编写自己的wordpress分页,而不是使用某些代码。如果您无法这样做,您可以使用wordpress中提供的插件数量来实现它。
希望这会对你有帮助。