Since you aren’t able to use the out-of-the-box functionality (i.e. not publishing the posts!) you will inevitably have to cover yourself in a few different ways. You seem to have most of them covered – but a couple more ideas:
- The single post page itself. Assuming you are OK with the post never being visible at all from the public-facing website, you could write some code at the top of your header file that checks if the post is in the ‘unpublished’ category and if is is, simply exits.
- Archive pages As you noted – you’ll need to exclude these posts from archive pages (category, date and tag). You can do this by customising the query to exclude this category.
If you have a simple theme without multiple templates, this will be reasonably simple but not foolproof since you will still have designated these posts in WP as published!
Related Posts:
- How to use “Add link” pop up for a WordPress widget
- add action only on post publish – not update
- How to prevent posts from being published too close to each other?
- Adding additional data to WP_Post object
- Is it possible to Schedule Attachments in WordPress?
- Passing a hardcoded page/post ID into `get_post`
- Elegant way to include only published posts with get_objects_in_term()?
- Use an attachment in multiple posts
- WordPress plugin to publish to multiple remote WordPress blogs
- Post publish only hook?
- Publish pending article from front end with a button?
- How to add a “publish” link to the quick actions
- How to limit user to publish post per day and per role?
- When a user creates a post (pending), send a confirmation link that allows them to publish
- In what sequence are the hooks fired when a post is “published”?
- Restrict the Number of Posts an Author can Publish (over time)?
- Add javascript when post is published
- featuring old articles without messing up with the archive
- Publish posts only after the condition is met
- Hiding by default specific post status on backend list?
- Detect Post Type when publish_post is ran
- How can I display a specific user’s first published post?
- Does WordPress remove draft status automatically?
- What Can I Use To Add A Custom Button Between Publish button and Move To Trash?
- Prevent post from being published if no category selected
- Send email to user that his post has been rejected
- Limit number of posts a user can make per minute?
- Query Post Preview Updates from the WP API?
- publish_post conflicts with save_post
- Notification to Admin or Author upon new post [duplicate]
- What differences are there between a Privately Published post and a Draft post?
- How to run a function when post is edited or updated using publish post action?
- How can I create custom button in post.php
- How to rename “Publish” metabox title in post screen
- count the total number of comments the user has received for his published posts
- Automatically Updating Publish Date Bug
- WordPress REST API not returning all posts
- How can I schedule a PAGE to go live at a future date/time?
- How to give capability (publish contributors posts) to author role?
- Print a message if excerpt is empty after posts have been publish/update!
- How can I get the media inside a post?
- Check if checkbox is marked on publish/update post
- Decide user that can publish a post
- How to switch wordpress post status between publish and schedule in MySQL?
- Prevent scheduled post being published if date/time is past current date/time
- How to disable WordPress blog folder
- Calling Different Custom Post Timestamps in a table
- Copy post to separate database with “add_action(….)”
- Do action on publish or update?
- transition_post_status hook doesn’t have any POST data when publish with Gutenberg [closed]
- How do I manage my users post before publish?
- do more action after I publish a post
- Change post-slug using wordpress API? Change permalink of a post using php / jquery?
- Assign published posts to another user automatically
- Display password protected posts to logged in users
- Stop wordpress from creating empty/null entries
- WordPress bulk category select when publishing post
- Creating a WordPress Post via REST API – HTML or Markdown?
- How can I tell if a post has been published at least once?
- Send email for pending post
- Post: how to set created date after post has been published [closed]
- Add delay to publish post
- Publish a Silent Post without updating Feed
- How can my plugin display a populated new post window
- Get timestamp of latest post in C#
- Pull in posts using post meta for REST API
- How to set a Post’s default visibility to ‘Private’ in Gutenberg?
- WordPress doesn’t save or publish new posts
- Hook when post is set from published to draft?
- Send email to user when I publish a new post
- exclude particular category in api
- Is update_post_meta used when save_post action hook is invoked?
- My posts are getting to Auto draft when I try to Publish
- How to publish a post if condition is met?
- WordPress get tags in “publish_post” hook
- Get origin or context of a how a post got created and/or updated
- How publish post from pending status
- how to fetch posts from Api in chunks or parts?
- REST API Working for GET but not for POST?
- post is not showing more than 3949 words
- Bulk Post update_post_meta
- Create blog post from external source and set publication date
- How to create REST Based JSON API(how to modify the code below)?
- Problem with wp_insert_post()
- Surrogate ID for posts, is there an alternative field in the posts table?
- I want to send push notification just after publish a new post
- How to Test a Blog Post for Update vs. Publish Status — Unique
- How to handle a post before publishing?
- Return All Post from publish to draft [duplicate]
- I am creating a front end dashboard where I need to show all the posts by the current user. So, I need to show posts in publish
- Need All the posts with id, title and date [closed]
- Action while post is being published
- How can add custom commands in post-new.php in wordpress
- Change WordPress post-state in Admin Area
- Advanced Custom Fields – Storing array value for further usage
- Global $post not working in OOP function WordPress
- How to get the old WordPress Draft Editor view back with the Word count?
- How do I switch css class on post
- How to get override the WP Admin Syndication feed limit for a custom feed?
- Output number of WordPress posts remaining until a post milestone is reached