<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>
如果have-posts()
为真,那么......我不理解:
的位置。
答案 0 :(得分:3)
在PHP中,有两种方法可以编写复合语句,如if
和while
实体。您可以使用{ ... }
包围身体:
while (condition) {
body
}
或者您可以使用:
和endXXX
声明:
while (condition) :
body
endwhile;
您的代码使用第二种形式。当在体内与<?php ... ?>
混合时,它是一种非常常见的风格,因此块的结尾比以下更突出:
<?php } ?>
答案 1 :(得分:1)
这些功能是Wordpress允许您操纵存储在数据库中的帖子的功能。
:
只是一种替代语法,:
替换while
中的花括号。
http://codex.wordpress.org/The_Loop_in_Action
- 首先,它检查是否发现了任何帖子 have_posts()函数。
- 如果有任何帖子,则启动PHP while循环。一个循环 只要括号中的条件将继续执行 在逻辑上是正确的。所以,只要函数have_posts()返回 一个真值,while循环将保持循环(重复)。
醇>
http://php.net/manual/en/control-structures.alternative-syntax.php
PHP为其某些控制结构提供了另一种语法; 即,if,while,for,foreach和switch。在每种情况下,基本的 替代语法的形式是将左大括号更改为冒号 (:)和endif的结束括号;,endwhile;,endfor;,endforeach;, 或者endwitch;分别。
答案 2 :(得分:0)
这是使用while
:http://php.net/manual/en/control-structures.while.php
因此,上面的代码与此相同:
if ( have_posts() ) {
while ( have_posts() ){
the_post();
the_content();
}
}