Yes, it’s possible to loop all publish posts and change their post status to draft.
add_action('admin_init','wpse_244394');
function wpse_244394(){
$args = array('post_type'=> 'post',
'post_status' => 'publish',
'posts_per_page'=>-1
);
$published_posts = get_posts($args);
foreach($published_posts as $post_to_draft){
$query = array(
'ID' => $post_to_draft->ID,
'post_status' => 'draft',
);
wp_update_post( $query, true );
}
}
Related Posts:
- Should we trust the post globals?
- Get first post from wp_query
- Querying post from a multisite network
- How to query serialized array by comparing greater than (>=)?
- How to know if get_posts() failed?
- Show related posts by category but ignore one category
- post__in for get_posts with a dynamic array
- Query posts distinct authors
- How to get previous 10 days post from a specific date – WP Query
- Post content being duplicated by the_content();
- Specific loop in Shortcode
- Sort posts by activity date
- How to add padding between posts
- prevent showing posts of an specific category in admin posts section
- Working Bootstrap Carousel Conversion to WP – Technical Questions
- Search widget breaks when using multiple loops?
- If specific user role then sticky post
- Display posts with comments closed, with pagination?
- WP Query related posts by current page Tag ID
- I want to query posts in monthly basis
- Custom WP_QUERY $args
- WP_Query get posts from custom posts by category
- Accessing post->ID outside of the loop for listing child pages
- Limiting the number of posts in WP_Query leads to unexpected result
- List posts in a given category
- Reset Popular post query?
- Query Posts multiple conditions
- Future post ID not showing
- Search by post title and content in wp_query without order
- How to do set post permalinks using 6 digit random unique function?
- How safe is renovating $wp_query when doing WP_Query pagination in Page Template
- posts_per_page option limits the number of Gallery items
- wp_query random post
- how to get post order by post id wp_query?
- Possible to alternate between two loops
- How to display all posts divided/ordered by post date? [closed]
- Why Query is returning empty array?
- Is it possible to use WP_Query to only pull posts with attachments?
- meta_value timestamp older than now
- Every second post different class in blog view
- Get posts with multiple categories
- Do not show children of a category
- Display posts of specific category term
- Can’t understand why sometimes a [caption] field appears
- search blog posts by author first name and or last name
- Display current post position in Elementor Posts widget
- Why in my query is display two title?
- wp_query with ajax
- How to give classname to post if post has no content?
- Custom wp-query in wordpress rest api
- posts_per_page returning only one post
- Need to know custom code to display random and most viewed posts in wordpress posts and pages
- How to retrieve certain number of images from a wordpress post?
- WordPress post filter menu
- How to display post list in a table layout (multiple queries in single loop)
- WP_Query custom field pass the post id
- How to convert query sql to shortcode in wordpress?
- Use posts_where to exclude posts ids from wp_query
- Current and next month posts
- Why does WordPress search returns same number of results for every search query?
- Same post appears in related Posts?
- Sidebar limiting to 10 posts?
- Override WordPress core post-template.php block template
- WP_Query outputs wrong post in custom post type
- how to show comments only author which send own posts in wordpress
- Group first, 2nd, 3rd, etc posts by category terms
- Change Old WordPress Post Date Year
- Display/Filter post using if else statement
- How to sort WP_Post Object array by object field in php?
- Search results for ACF data
- Query prints posts without specific categories
- Numbered Pagination Showing The Same Posts After Altering WP_Query
- Order by meta_key field in WordPress not meta_value field value
- How to create page with post content in it?
- How to remove a post from results by ID after query?
- Override wp_link_pages pagebreak with filter
- Loop through all posts showing duplicates
- WP_Query extended with AJAX
- Manipulate query to show specific post
- WordPress text field in array problem
- Random order of the 5 most popular posts
- My custom query is displaying random posts in random order
- Get query result according to merged array
- Blog only showing one post even though more published
- WordPress loop uses unmodified posts array, why?
- Sort / Filter Queries
- Why I have this strange behavior when I try to exlude the featured post from posts visualization?
- How to show the posts list into a static page? Problems to use the loop into a static page
- How do I control the fallback query after the original query returned cero posts?
- Order posts by separate menu order for different sub-categories
- Adding a category at even positions on main loop with modified pagination
- Displaying Results From Custom Taxonomy Query
- Multiple loops on a Search result page?
- What is wrong with this wp_query?
- WP_Query: Fetch posts that are in (category1 and not in category2), OR posts that are not in cagegory1
- Exclude sub sub categories from displaying in the archive page
- How do I show the post title if an advanced custom field hasn’t been used?
- How add class the_content();?
- Get related posts matching most of the provided tags using WP_Query
- WP_Query post_tilte search in posts table