假如我们选择首页显示最新文章,并且:第一篇文章显示摘要,后面的只显示标题。。。还有第一篇文章显示广告之类的。。。那么如何利用循环控制呢?
1、首页显示文章的代码一般都是:
<?php if (have_posts()) : ?>
<!--检查是否有文章如果有,继续执行,没有就跳到 else 那里-->
<?php while (have_posts()) : the_post(); ?>
<!--开始准备文章内容,开始循环,每次循环输出一篇文章-->
此处显示文章内容或标题之类的。。
<?php endwhile ; ?>
<!-- while 循环结束-->
<?php else : ?>
此处显示未找到文章时的信息,比如404相关
<?php endif ; ?>
<!-- if 结束-->
2、要想精确的控制每篇文章,我们先在循环前定义一个变量 $ashu_i=1 来计数,变量名随便,然后每循环一次,$ashu_i加1,例子我把index.php中的代码改成下面的--
<?php if (have_posts()) :$ashu_i=0;?>
<?php while (have_posts()) : the_post();$ashu_i++;?>
<?php echo "这是第 $ashu_i 篇文章:<br/>";?>
<?php the_title();?>
<?php echo "<hr>";
<?php endwhile; ?>
<?php else : ?>
此处显示未找到文章时的信息,比如404相关
<?php endif; ?>
上面的例子就给每篇文章来了个简单控制。
3、具体要想让第一篇文章显示摘要,而余下的显示标题--代码:
<?php if (have_posts()) :$ashu_i=0;?>
<!--检查是否有文章,并定义计数变量初始值为0 -->
<?php while (have_posts()) : the_post();$ashu_i++;?>
<!-- 开始循环,第一次循环$sahu_i为1,第二次为2,依次。。 -->
<?php if($ashu_i==1){?> <!-- 如果是第一篇文章 -->
<?php the_content();}else{?> <!-- 显示内容 -->
<?php the_title();}?> <!-- 如果不是第一篇显示标题 -->
<?php endwhile; ?> <!-- 一次while循环结束 -->
<?php else : ?> <!--如果没有文章-->
此处显示未找到文章时的信息,比如404相关
<?php endif; ?> <!--if结束 -->
上面的代码就可以实现第一篇文章显示摘要,而后面的文章都只显示标题
您可能感兴趣的文章:
▪ WordPress数据库及各表结构功能详解
▪ 利用Bootstrap构建你的响应式WordPress主题( 五)
▪ wordpress使用register_post_type 函数创建自定义文章类型∶
▪ WordPress函数:add meta box(自定义添加Meta模块)
▪ WordPress边栏小工具调取某段时间内最热文章
▪ wordpress短代码显示用户注册日期
▪ wordpress文章页面添加字体增大减小链接
▪ 提升WordPress 国外主题打开速度全面解决方案
▪ 开启Gzip压缩加快你的wordpress网站加载浏览速度
▪ WordPress函数:comments_template(加载评论模板