这个方法我们可以在一些CMS主题中经常看到。像wopus的首页;它在首页调用了很多分类。然后把分类的第一条和其他的标题区分出来;我们先来看下默认的主循环。
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
?? ?这里是循环的内容
<?php endwhile; else: ?>
?? ?<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>
have_posts()判断有没有数据,如果有,则进入循环。要实现那样的效果,我们只需要建立两个循环就行了。在这里我们可以用query_posts() 来查询数据。
<?php query_posts('showposts=1'); ?>
我们先输出一条日志。然后对这个日志进行一些自定义,它可以有标题,作者,分类,内容…
<?php query_posts('showposts=10&offset=1'); ?>
然后再输出10条日志。用offset排除第一条。这10条我们只需要输出标题就行。完整的代码看下面
<?php query_posts('showposts=1'); ?>
- <?php?if(have_posts()) : while (have_posts()) : the_post(); ?>
- <div id="post-<?php?the_ID() ;?>">
- ? ? <h2><a href="<?php?the_permalink() ?>" title="点击查看?><?php the_title(); ?>" ><?php the_title(); ?></a></h2>
- ? ? <?php?the_content('阅读全文»'); ?>
- </div>
- <?php?endwhile; else :?>
- ? ? ...display error message
- <?php?endif; ?>
- <?php?query_posts('showposts=10&offset=1'); ?>
- <ul>
- <?php?while (have_posts()) : the_post(); ?>
- <li><a href="<?php?the_permalink() ?>" title="点击查看?><?php the_title(); ?>" ><?php the_title(); ?></a></li>
- <?php?endwhile; ?>
- </ul>
OK了,是不是很简单就实现了。
这个还需折腾,试了试出错了