在循环中,您具有以下功能:
the_ID()
或get_the_ID()
那个回报$post->ID
the_title()
或get_the_title()
那个回报$post->post_title
the_content()
或get_the_content()
那个回报$post->post_content
等。
但是他们会为你正在查看的帖子应用过滤器和短代码。有关这些功能如何工作的更多详细信息,请访问WordPress Code Reference
在一个循环中,您应该ALWAYS 使用为您创建的函数。他们有理由。正如我之前所说:它们应用过滤器并解析短代码。您还应该阅读Global Variable WordPress codex中的文章。
在我看来,你应该只使用$post
只有当你没有其他选择的时候。例如:出于某种原因,您需要帖子的未过滤内容
在内部The Loop 上述函数及其对应函数返回循环中当前职位的信息。如果您在类别/归档页面上,请使用$post
外循环将为您提供最后$post
在循环中(如果在之后使用)或在初始化值之前没有发生任何查询。
NOTE 这是一个全局变量,在The Loop 如果您正在使用它/或插件像我以前一样使用它(if ($pageposts) : global $post; foreach ($pageposts as $post) : setup_postdata($post); ... endforeach; endif;
) 由于其描述和预期用途,它将再次更改:
/**
* Set up global post data.
*
* @since 1.5.0
*
* @param object $post Post data.
* @uses do_action_ref_array() Calls \'the_post\'
* @return bool True when finished.
*/
我用过
setup_postdata($post)
为了使用
$posts
在我正在建造的旋转木马中设计功能,该旋转木马选择了属于
custom post types
基于
post meta information
, 当前日期等。。
我的建议是,如果您是WordPress新手,请坚持使用functions
实施对象you. 抽象化有它的好处。它使事物更容易找到、记住和使用。