我希望我能正确解释这一点,我想做的是使用默认的单词press循环来显示我的所有帖子等。。但是对于第一篇文章,我希望它的风格完全不同,这取决于它发布的父类别,所以在第一篇文章中会有很多内容。
现在,我正在通过使用两个循环来实现这一点,这两个循环都是从默认值中提取的,第一个循环是我的“新/特色”帖子区域,设置为posts\\u per\\u page=1,然后第二个循环是你的标准循环,但我遇到的问题是,它显然显示了重复的帖子,现在我尝试在第二个循环中使用offset=1,但我的分页不起作用,任何帮助或指导都会很好,我知道很抱歉。下面是我的两个循环的代码和我的测试站点的链接,谢谢!
第一个(新增/特色)回路:
<?php $custom_query = new WP_Query(\'posts_per_page=1\');
while($custom_query->have_posts()) : $custom_query->the_post(); ?>
<?php
$parent_cat = array();
$post_cats = get_the_category($post->ID);
foreach( $post_cats as $post_cat ) {
if( $post_cat->parent ) $parent_cat[] = get_category( $post_cat->parent )->slug;
}
?>
<!--CONTENT HERE-->
<?php endwhile; ?>
<?php wp_reset_postdata(); // reset the query ?>
<?php } else { ?>
第二(标准)回路:
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<!--CONTENT HERE-->
<?php endwhile; else: ?>
<?php _e(\'Sorry, no posts matched your criteria.\'); ?>
<?php endif; ?>
这里有一个开发网站的链接,你可以看到我在说什么
http://themes.thefragilemachine.com/gone/谢谢你的帮助!
最合适的回答,由SO网友:Michael 整理而成
一个带有条件语句的循环可以捕获第一个帖子;示例:
<?php if( $wp_query->current_post == 0 && !is_paged() ) : ?>
/*the output of the first post*?
<?php else : ?>
/*the output of all other posts*/
<?php endif; ?>