短代码中的Wordpress分页
一个针对Wordpress大脑的快速问题 我有一个快捷码,目前从某个帖子类型导入所有帖子。但是,我在为wp_查询添加分页时遇到了问题 为了解释这段代码的功能,我将[feed type=“attractions”limit=“2”]放在页面上,它会根据景点显示2篇文章,但不会分页。只是想知道我到底做错了什么 这是密码!-->短代码中的Wordpress分页,wordpress,custom-post-type,Wordpress,Custom Post Type,一个针对Wordpress大脑的快速问题 我有一个快捷码,目前从某个帖子类型导入所有帖子。但是,我在为wp_查询添加分页时遇到了问题 为了解释这段代码的功能,我将[feed type=“attractions”limit=“2”]放在页面上,它会根据景点显示2篇文章,但不会分页。只是想知道我到底做错了什么 这是密码!--> 功能部分\u提要\u短码($atts){ 提取(短码_atts(数组('limit'=>-1,'type'=>'post'),$atts)); $q=新的WP\U查询(数组(
功能部分\u提要\u短码($atts){
提取(短码_atts(数组('limit'=>-1,'type'=>'post'),$atts));
$q=新的WP\U查询(数组('posts\u per\u page'=>$limit,'post\u type'=>$type,order=>ASC',orderby=>menu\u order','paged'=>get\u Query\u var('page'));
$list='';
而($q->have_posts()){$q->the_post();
$list.=''
. ''
. ''
. '';
}
wp_reset_query();
返回
''
美元清单
“.”下一篇文章链接('larr;'Older posts','stratford'wp')。'
“以前的帖子链接('Newer posts→','stratford'wp')”
. '';
}
添加_短代码('feed','section_feed_短代码');
感谢您的高级回答 您需要添加全局$paged,然后在传递给WP_Query的数组中,您需要添加'paged'=>$paged 您的查询应该是这样的
global $paged
$q = new WP_Query( array ( 'posts_per_page' => $limit, 'post_type' => $type, order => 'ASC', orderby =>'menu_order', 'paged' => $paged ) );
在转到下一个/上一个链接之前,您正在重置查询。如果将wp_reset_query()函数进一步下移,会发生什么情况
另外,你今天面对这个问题并找到了一个解决方案时,可能会有更多的运气:
global $paged
$q = new WP_Query( array ( 'posts_per_page' => $limit, 'post_type' => $type, order => 'ASC', orderby =>'menu_order', 'paged' => $paged ) );
然后,您必须更改自定义帖子的paginate\u链接
查询。参见示例。最好在函数使用之前添加一个函数并调用它
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $q->max_num_pages //$q is your custom query
) );
不幸的是,这似乎没有改变任何事情。并不是分页不起作用。。。当我输入url和“/page/2”时,它确实会显示下一组帖子,但是get_next_posts_链接和previous链接似乎没有任何作用。多亏了道尔顿,我尝试了向下移动重置功能,但没有任何效果。我已经转载了这个,谢谢你的帮助。
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '?paged=%#%',
'current' => max( 1, get_query_var('paged') ),
'total' => $q->max_num_pages //$q is your custom query
) );