Gets changeset posts.
Parameters
$args
arrayoptional- Args to pass into
get_posts()
to query changesets.
posts_per_page
intNumber of posts to return. Defaults to -1 (all posts).author
intPost author. Defaults to current user.post_status
stringStatus of changeset. Defaults to'auto-draft'
.exclude_restore_dismissed
boolWhether to exclude changeset auto-drafts that have been dismissed. Defaults to true.
Default:
array()
Source
protected function get_changeset_posts( $args = array() ) {
$default_args = array(
'exclude_restore_dismissed' => true,
'posts_per_page' => -1,
'post_type' => 'customize_changeset',
'post_status' => 'auto-draft',
'order' => 'DESC',
'orderby' => 'date',
'no_found_rows' => true,
'cache_results' => true,
'update_post_meta_cache' => false,
'update_post_term_cache' => false,
'lazy_load_term_meta' => false,
);
if ( get_current_user_id() ) {
$default_args['author'] = get_current_user_id();
}
$args = array_merge( $default_args, $args );
if ( ! empty( $args['exclude_restore_dismissed'] ) ) {
unset( $args['exclude_restore_dismissed'] );
$args['meta_query'] = array(
array(
'key' => '_customize_restore_dismissed',
'compare' => 'NOT EXISTS',
),
);
}
return get_posts( $args );
}
Changelog
Version | Description |
---|---|
4.9.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.