WordPress中调用文章标题是the_title();调用文章内容时用到the_content();调用文章的作者时用到the_author();等等这些函数,都需要在主循环中使用,下面就介绍一下如何用have_posts()和the_post()开始Wordpress文章中循环,并说明如何结束循环。
语法
1 | <?php if (have_posts()) : while (have_posts()) : the_post(); ?> |
2 | 当找到文章时返回此语句 |
3 | <?php endwhile ; else : ?> |
4 | 当没有找到文章时,返回此语句 |
5 | <?php endif ; ?> |
循环开始标志
1 | <?php if (have_posts()) : while (have_posts()) : the_post(); ?> |
循环开始后,可以在循环中用the_title();输出文章的标题,the_content();输出文章的内容,the_author();输出文章的作者等。
循环结束标志
1 | <?php endwhile ; else : ?> |
2 | 当没有找到文章时,返回此语句 |
3 | <?php endif ; ?> |
循环开始,必须有循环结束。
一般主循环在寻找文章的时候用到,比如在WordPress模版中index.php,single.php,active.php等需要调用文章的文件中。
WordPress的have_posts()和the_post()用法解析
原文地址:http://www.phpvar.com/archives/2316.html
网上找到一篇介绍WordPress的have_posts()和the_post()用法解析的文章,觉得不错!
在WordPress的index.php文章循环输出中,通常会有下面一段代码:
<?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <!–PHP代码 –> <?php endwhile; ?> <?php endif; ?>
这里有两个函数,have_posts()和the_post()。
have_posts()解析:
WordPress的have_posts() 默认是一个全局函数。
have_posts函数被调用时实际上是调用全局变量$wp_query->have_posts()成员函数,来简单检查一个全局数组(array)变量$posts的一个循环计数器,以确认是否还有post,如果有返回true(1),如果没有返回false(0)。
the_post()解析:
the_post()函数则调用$wp_query->the_post()成员函数前移循环计数器,并且创建一个全局变量$post(不是$posts),把当前的post的所有信息都填进这个$post变量中,以备接下来使用。
简单的使用可以通过函数来直接执行,如the_content()直接显式post的内容,the_title()显式帖子的标题,the_time()显示帖子的时间等WORDPRESS的Template Tags。
高级应用或要定制应用则可以直接调用$post变量的成员。