This will do what you want:
$args = array(
'author' => $curauth->ID,
'post_status' => array(
'publish',
'pending',
'draft',
'future'
)
);
$posts = new WP_Query();
$post_count = $posts->found_posts;
It will include drafts, pending posts, published posts, and future posts. There are more you can set, such as trashed posts, and private posts, but that didn’t seem to follow the intent of the question. This method will include custom post types as well as the builtin post types, so additional filtering may be in order.
Docs: WP_Query
Related Posts:
- Is it possible to have more “levels” of draft/published statuses?
- What is a “protected” post status?
- how to assign a status/mark to post?
- Why doesn’t wp_update_post() update the post_status field?
- register_post_status and show_in_admin_all_list
- Changing post status in one click
- How can I run custom function when post status is changed?
- WP_Post_List_Table::get_views – Have post counts account for filters?
- Creating/editing custom ‘post-state’
- Using arbitrary post status without registering it
- Get a list of ALL Statuses both registered and built-in
- Adding custom post status to visibility in publish meta box
- Changing post status
- Change scheduled posts to published
- Remove ‘private’ and ‘pending review’ options from post status dropdown
- Can not get future_to_publish to work
- Which is the better way to get the status of a post?
- “Publish immediately” with custom post status
- Modify Post Status Arguments
- Additional page and post status types
- Add a simple JS Alert Box on Post Submission
- Function to change post status IF current user and post author are the same
- Schedule future post to custom post status instead of publish?
- Why does get_post_status display published when attachment is in trash?
- Force Custom Post Type Status to ‘Future’ on first Save or Publish
- Workflow for attachments in WordPress
- how to transition to custom post status on post save
- How to change custom post type status when non-admin updates post?
- Custom post status filter links always show a count of all posts in the site with that status, not the logged in users count
- wordpress post status inquery
- Multiple Post Status
- retrieve post details in loop
- Any way to change post/page status when editing page?
- How to change post status from “draft” to “publish”?
- transition_post_status doesn’t work with bulk updates
- Submitted for Review back to a Draft page
- How to Add Custom Post Status in WordPress Admin
- Auto draft posts when scheduled date is reached
- Changing a post status name
- How to update post status to draft if user role is “pending’
- How to create posts with a specific date in bulk
- How to Get All Posts with any post status?
- Using get_post_meta with new_to_publish
- Restrict a Post Types Post Status
- Setting post meta data to random value during post status transition / on publish
- Detect type of post status transition
- change a post status when users update posts?
- How to change post status from publish to draft using hook in wordpress?
- How can I style future post?
- Hiding by default specific post status on backend list?
- Comments Feed & Custom Post Statuses
- update_post_meta() not working when used with WordPress action
- How do I check if a posts status is set to draft or pending?
- why do drafts return as part of wp_query?
- Custom Post Status Posts viewable to the public
- How does WordPress track that a certain User is Logged-In
- Getting the different post statuses + count like in edit.php, in a custom submenu page
- add filter to “quick edit menu” in wordpress admin
- How to Modify this $wpdb query to accept an array of post statuses
- Change Visibility to Private
- Is it possible to change an existing post status from ‘pending’ to ‘publish’ via email?
- how to remove dash (-) post status from post title on posts listing page wordpress
- Wp_query Add specific pending posts
- how to do a processing Orders into Complete after x Minutes or x hour in WooCommerce [closed]
- WordPress post_status is future, manually added
- Custom post type suppress transition from future to publish
- change woocommerce product statut (draft ->publish // publish->draft) depends on the month [closed]
- How to update all posts but the current one (post__not_in not working?)
- How to use same page template if post status other than ‘publish’?
- Restrict edit, but allow preview for custom post status
- Count posts by type including drafts and pending posts
- Update status of all posts in a category
- why there are so many posts whoes post_type is revision? will these records waste too much database space?
- Programmatically change post visibility on save_post action return a 500
- Auto-change Post Status on First Page Load
- How can I specify the post status of an untrashed post?
- Include future posts in tags and in search
- Is there a way getting post fields using `transition_post_status`
- Also show terms that are related to draft and pending posts
- Post Status Frontend Announcement
- Showing posts for today and future
- Manually adding or updating CPT automatically sets post_status of future
- Change user role when user’s first post gets published
- How to return a 410 code for previously published posts now set to draft?
- Custom product status get filtered on all product list views
- Woocommerce – Remove cart button depending product (post) status
- Update post status from “publish” to “trash” prior to year 2018
- Transition_Post_Status hook not working properly
- Hide or remove custom post status
- Put page on Archived statut after end of publication date
- get_next_post() not working with future post status
- Custom status and permalinks don’t work?
- date archive future posts
- Include attachments with a custom taxonomy in search
- Query for draft or scheduled post
- Override private status – Enable users to read private posts
- Custom Query for searching through custom fields
- Change post status by custom fields
- Do anything on post_status change [duplicate]
- custom status in Woocommerce with database results