wordpress主循环显示文章列表不同样式的方法

时间:2020-9-19 作者:admin

假如我们选择首页显示最新文章,并且:第一篇文章显示摘要,后面的只显示标题。。。还有第一篇文章显示广告之类的。。。那么如何利用循环控制呢?

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(加载评论模板

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。