循环浏览所有帖子的最快方式?

时间:2011-03-23 作者:Thirlan

我需要在一个插件中运行一个后台进程,该插件一旦安装,就会对个人数据库中的所有帖子进行一些处理。我是wordpress的新手,所以我的研究表明,我可以使用wp查询,也可以使用“循环”。

因为我正在经历每一个帖子的速度是至关重要的。我需要检查标题、正文、类别、元标记、发布状态和密码保护。那么基于此,其中哪一个速度最快?

2 个回复
最合适的回答,由SO网友:goldenapples 整理而成

“循环”只是给while (have_posts()): the_post(); 循环,用于迭代WP_Query(). 用于查询帖子的另一个函数是get\\u posts()函数,该函数返回一个简单(非扩展)数组,您可以使用foreach

我不认为这很重要;然而,如果你挑剔get_posts() 方法的速度稍快,内存占用较少,因为它不调用setup_postdata() (它填充模板标签等)在它循环通过的每个帖子上。

不管怎样,你可能会在一些有数千篇帖子的设置中耗尽内存。。。在这种情况下,请确保构建回退。

SO网友:Taylor Dewey

“循环”只是应用于应用于WP\\U查询对象的foreach循环的名称。所以你两者都需要。通常,循环还包括\\u post(),以便您可以使用模板标记。

不过,还有另一种选择,可能更快。根据需要执行的操作,您可以执行直接数据库查询,只检索要编辑的字段。但是,由于您还需要类别和元标记,这将是一个复杂的连接。为了便于更新和向后兼容,您还可以使用常规的WP\\u查询。

结束

相关推荐

Posts wont expire

我在安排帖子自动过期(要么删除,要么起草)方面遇到了一些麻烦,我尝试过的每个插件都没有做任何事情,当它达到预定时间时,什么都没有发生,这让我觉得这可能是我一直忽视的一件简单的事情。。我想我可能对wp-cron有问题,但我似乎在通过wordPress设置未来的发布日期方面没有任何问题。我运行了最新版本的Wordpress,并设置了多个站点。所有插件都是目前可用的最新版本。有人有什么想法吗??我没有东西可以尝试了。。。提前感谢塔夫芝