既然它在另一个页面上成功运行,我不明白为什么它在这里对我不起作用。
问题是其他页面不是静态首页。当分页静态页面时,WordPress使用page
变量,而不是paged
查询变量。页面使用<!--nextpage-->
分页。从WP_Query page:
分页说明:使用get\\u query\\u var(\'page\');如果希望查询在已设置为静态首页的页面模板中工作。查询变量“page”还保存包含<!--nextpage-->
文章内容中的Quicktag。
在静态首页上显示当前页面的帖子:
$paged = ( get_query_var(\'page\') ) ? get_query_var(\'page\') : 1;
$query = new WP_Query( array( \'paged\' => $paged ) );
在代码中,这是:
global $paged;
global $bday_parties;
$temp = $bday_parties;
$bday_parties = null;
$bday_parties = new WP_Query();
$bday_parties->query(\'category_name=party-themes&posts_per_page=1&post_type=page\'.\'&paged=\'.$paged);
while ($bday_parties->have_posts()) : $bday_parties->the_post();
可以重写为:
global $bday_parties;
$temp = $bday_parties;
$bday_parties = null;
$bday_parties = new WP_Query();
$page_number = ( get_query_var(\'page\') ) ? get_query_var(\'page\') : 1;
$bday_parties->query( \'category_name=party-themes&posts_per_page=1&post_type=page&page=\' . $page_number );