WP_Query::setup_postdata
Sets up global post data.
Method of the class: WP_Query{}
Hooks from the method
Returns
true|false. True on success, false on failure.
Usage
global $wp_query; $wp_query->setup_postdata( $post );
- $post(WP_Post|object|int) (required)
- WP_Post instance or Post ID/object.
Notes
- Global. Int.
$id - Global. WP_User.
$authordata - Global. String.
$currentday - Global. String.
$currentmonth - Global. Int.
$page - Global. Array.
$pages - Global. Int.
$multipage - Global. Int.
$more - Global. Int.
$numpages
Changelog
| Since 4.1.0 | Introduced. |
| Since 4.4.0 | Added the ability to pass a post ID to $post. |
WP_Query::setup_postdata() WP Query::setup postdata code WP 7.0
public function setup_postdata( $post ) {
global $id, $authordata, $currentday, $currentmonth, $page, $pages, $multipage, $more, $numpages;
if ( ! ( $post instanceof WP_Post ) ) {
$post = get_post( $post );
}
if ( ! $post ) {
return false;
}
$elements = $this->generate_postdata( $post );
if ( false === $elements ) {
return false;
}
$id = $elements['id'];
$authordata = $elements['authordata'];
$currentday = $elements['currentday'];
$currentmonth = $elements['currentmonth'];
$page = $elements['page'];
$pages = $elements['pages'];
$multipage = $elements['multipage'];
$more = $elements['more'];
$numpages = $elements['numpages'];
/**
* Fires once the post data has been set up.
*
* @since 2.8.0
* @since 4.1.0 Introduced `$query` parameter.
*
* @param WP_Post $post The Post object (passed by reference).
* @param WP_Query $query The current Query object (passed by reference).
*/
do_action_ref_array( 'the_post', array( &$post, &$this ) );
return true;
}