Retrieves a number of recent posts.
$argsarrayoptional
Default:array()
$outputstringoptional
Default:ARRAY_A
$output parameter. Empty array on failure.Only the value of ARRAY_A is checked for $output. Any other value or constant passed will return an array of objects.
This function returns posts in an associative array (ARRAY_A) format which is compatible with WordPress versions below 3.1.
To get output similar to get_posts() , use OBJECT as the second parameter: wp_get_recent_posts( $args, OBJECT );
function wp_get_recent_posts( $args = array(), $output = ARRAY_A ) {
if ( is_numeric( $args ) ) {
_deprecated_argument( __FUNCTION__, '3.1.0', __( 'Passing an integer number of posts is deprecated. Pass an array of arguments instead.' ) );
$args = array( 'numberposts' => absint( $args ) );
}
// Set default arguments.
$defaults = array(
'numberposts' => 10,
'offset' => 0,
'category' => 0,
'orderby' => 'post_date',
'order' => 'DESC',
'include' => '',
'exclude' => '',
'meta_key' => '',
'meta_value' => '',
'post_type' => 'post',
'post_status' => 'draft, publish, future, pending, private',
'suppress_filters' => true,
);
$parsed_args = wp_parse_args( $args, $defaults );
$results = get_posts( $parsed_args );
// Backward compatibility. Prior to 3.1 expected posts to be returned in array.
if ( ARRAY_A === $output ) {
foreach ( $results as $key => $result ) {
$results[ $key ] = get_object_vars( $result );
}
return $results ? $results : array();
}
return $results ? $results : false;
}
| Version | Description |
|---|---|
| 1.0.0 | Introduced. |
© 2003–2024 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_get_recent_posts