像the WordPress Codex for have_posts 指出:
作为一种副作用,have\\u posts启动、逐步完成或重置循环。在循环结束时,have\\u posts在调用rewind\\u posts后返回0。
查看当前的来源:以及呼叫rewind_posts() 它还激发loop_end 操作(插件可能依赖于)以及设置标志in_the_loop() 正确后返回false。
这么说吧have_posts() 在每次迭代中,不仅仅返回布尔值。我不会过于依赖源的细节,因为那是一个移动的对象。当你打电话的时候,你应该知道还有其他家务活要做have_posts() 除非它返回false,否则即使只涉及一篇文章,如果这样使用它,也不太可能引入细微的互操作性问题。