Wordpress自定义查询分页和Ajax
Wordpress custom query pagination and Ajax
我的wordpress网站上有一些类别页面和带有自定义查询的单个页面。主页上的分页是基于在同一页面上加载帖子的脚本。
问题是,分页只能在单个页面和类别中使用<?php previous_posts_link('« Previous') ?>
该脚本不适用于单个页面和类别。
这是代码:
<div class="main_container">
<div id="load_posts_container">
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$args=array(
'post_type'=>'post',
'cat' => '-28' . $category_ID,
'posts_per_page' => 8,
'paged'=>$paged
);
$temp = $wp_query;
$wp_query= null;
$wp_query = new WP_Query($args);
if ( $wp_query->have_posts() ) : while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?>
<!--ARTICLES MARKUP HERE-->
<?php endwhile; endif;
?>
<!--//load_posts_container-->
<
<div class="load_more_cont">
<p>Altri eventi <br/>
<span class="load_more_text"><?php next_posts_link('<img src="' . get_bloginfo('stylesheet_directory') . '/images/load-more-image.png" alt="Altri Eventi a Roma"/>', $wp_query->max_num_pages) ?></span>
</p>
</div>
<!--//load_more_cont-->
<?php $wp_query = null;
$wp_query = $temp;
wp_reset_query(); ?>
<script type="text/javascript">
// Ajax-fetching "Load more posts"
$('.load_more_cont a').live('click', function(e) {
e.preventDefault();
//$(this).addClass('loading').text('Loading...');
//$('.load_more_text a').html('Loading...');
$.ajax({
type: "GET",
url: $(this).attr('href') + '#main_container',
dataType: "html",
success: function(out) {
result = $(out).find('#load_posts_container .home_post_box');
nextlink = $(out).find('.load_more_cont a').attr('href');
//alert(nextlink);
//$('#boxes').append(result).masonry('appended', result);
$('#load_posts_container').append(result);
//$('.fetch a').removeClass('loading').text('Load more posts');
//$('.load_more_text a').html('Load More');
if (nextlink != undefined) {
$('.load_more_cont a').attr('href', nextlink);
} else {
$('.load_more_cont').remove();
$('#load_posts_container').append('<div class="clear"></div>');
// $('.load_more_cont').css('visibilty','hidden');
}
if (nextlink != undefined) {
$.get(nextlink, function(data) {
//alert(nextlink);
if($(data + ":contains('home_post_box')") != '') {
//alert('not found');
// $('.load_more_cont').remove();
$('#load_posts_container').append('<div class="clear"></div>');
}
});
}
}
});
});
</script>
知道吗?感谢
如果WordPress没有为这些页面解析paged查询var(我还没有验证),你可能想跳过get_query_var('paged')
,只使用普通的老式$_GET['paged']
相关文章:
- CodeIgniter - AJAX 生成的元素内的 AJAX 分页
- 在ajax分页视图(cakephp)中显示adsense的问题
- AJAX 分页,页面不可单击
- Ajax 分页链接自定义
- 使用 Ajax 分页时缺少元素(Facebook 赞按钮)
- 在 AJAX 分页中添加类“活动”
- 页面加载时的 Ajax 分页
- 创建 ajax 分页
- AJAX 分页每隔一个链接刷新页面
- 历史的ajax分页问题.back()
- PHP AJAX分页将项目加载到多个容器中
- RubyonRails-AJAX分页中的JQuery未运行
- 使用Mustache JS的Ajax分页
- 用于PHP的AJAX分页解决方案
- AJAX分页结构
- 为什么jQuery live('click')只在带有AJAX分页的特定类的第一页上工作?
- Codeigniter中的AJAX分页
- 如何在没有数据库的情况下创建AJAX分页
- Laravel如何使ajax分页链接像非ajax一样工作
- 花式框点击与元素绑定在 Yii CGridView 与 ajax 分页