做站写循环的时候遇到了乌龙,记录一下
wp_reset_postdata() 是重置 query_post wp_reset_query() 是重置 WP_Query
wordpress官方wiki:
http://codex.wordpress.org/Function_Reference/wp_reset_postdata
http://codex.wordpress.org/Function_Reference/wp_reset_query
http://codex.wordpress.org/Function_Reference/query_posts
http://codex.wordpress.org/Class_Reference/WP_Query
重置WordPress循环的方法
总结一下,有三种方法,分别用于不同的情况,列表如下。
wp_reset_postdata() | wp_reset_query() | rewind_posts() |
使用WP_Query创建多个循环是使用,不接受任何参数,恢复$post全局变量的数据 | 使用query_posts()自定义循环时使用,不接受任何参数,不仅恢复$post全局变量,还会销毁之前的查询 | 需要重用同一个页面的查询结果时使用 |