WordPress Hide Posts plugin allows you to hide some post on your site, but still have it available by link.
The plugin has several options that allows you to hide post on different type of pages and / or archives.
You can hide your post on the front page (static or default), you can hide it on the categories page (this hides it on all categories, not on a specific). You can also hide it from search results showing on the search page.
Another options are to hide the post on tags, authors page and the blog page ( as selected in Settings -> Reading )
Recent update of the plugin allows for hiding on posts from the RSS Feed and the REST API.
By default those options are enabled for the Posts only. If you want to enabled it for other Post Types you can do that by going to Settings -> Hide Posts where you will see a list of available post types. You can select the ones on which you want to show the options.
If you run Woocommerce and you want to hide some product from the shop or from the product category archive page you can do that by enabling the Hide options for the Product Post type.
Once you do that, go to the product you want to hide and you will notice two more options showing there:
Check one or both options there depending on where you want to hide the product.
WordPress Hide Posts is available on WordPress.org directory and it is constantly updated and testing on new WordPress versions. It has over 6000 active installations and the number keeps increasing.
The support forum is often checked by the authors and fixes are applied as often as possible. In fact few of the options available are due to users asking for them by opening tickets. If you have any option you think it will be good, let us know and we will try to included it.