WordPress Custom Post Status not Public but Viewable Through Link: Privately Published Posts

I have been working on my site to bring up private posts on my site. I built a custom post status for this purpose.

My goal is to exclude posts belonging to that post status from search, from Blog Page, from WordPress Queries, RSS Feed etc. Basically there should be no mentions of it anywhere on site.

Till here it seems simple, but the problem is that I WANT people to be able to view the post via direct link.

Basically I want it to be not mentioned throughout my site, but if someone visits it from direct link, they can view it.

function custom_post_status(){  register_post_status( 'privatised', array( 'label' => _x( 'Privately Published', array('post', 'download')), 'public' => false,  'exclude_from_search' => true, 'show_in_admin_all_list' => true,  'show_in_admin_status_list' => true,  'label_count' => _n_noop( 'Privately Published <span class="count">(%s)</span>', 'Aggregated <span class="count">(%s)</span>' ),  ) );  }  add_action( 'init', 'custom_post_status' );  

Here if you see in the Array, the first option is Public, and I set it to false, which basically ensures that my post is not there on my Blog Page, or search, or Taxonomy Page, or RSS FEED etc. Etc. But if I open the same post via it’s direct url, then it gives a 404, because not found…

Please help, me have my post visible only through the direct link of it.

As a sidenote, Is it possible that I can have it public, and then exclude it from Taxonomy and all, like I can do with exclude from search…

Need help designing a full-screen (laptop) notification viewable at a glance from ~5-7 feet away

I have software I’m working on in which a user has to scan a full pallet’s-worth of various items of hardware for inventory-taking purposes (think of a wooden pallet in a warehouse laden with stacks of computer towers of various form factors, for example, with 50 towers per pallet) using a (possibly wireless) hand-held barcode scanner, a barcode sticker represents the unique instance of the item on which the sticker was placed.

The idea is that the person, using a barcode scanner connected to a laptop with my software open, can scan each item on the pallet at their own rhythm without having to move the laptop (which would be impractical). This means the user will themselves need to physically move about to accomplish the task and may not be able to see the screen immediately or up-close as they move about, scanning items.

I have (so far) envisioned a notification system which would notify the user via aural cues based on the state of the scanned item as it’s safe to assume they aren’t looking at the screen when scanning an item. A visual notification of sorts is of course important if they scan an item and can see the screen, however, and that’s where I’m having a bit of trouble.

The below mockup is what would be displayed for each notification which would appear for maybe 1-2 seconds before returning to the software’s default view of information which is effectively the list of all items in the pallet (read from a csv file generated by the management system), categorized and sorted with summarized tallies of scanned items, by brand and model. This default view however is too dense for viewing from a distance, so I’m having difficulty deciding on:

  • Should I display only one notification at a time, full screen? If so, how should I handle scans of items occurring before notification(s) of the previous item(s) disappear(s), keeping in mind that I’d like for the most recent notification displayed on screen to always be relative to the user’s most recent scan such that the information shown is always accurate if all the user does is glance at the screen when they scan an item.
  • Alternatively, I could allow 2, maybe 3 notifications at once on screen (each occupying half or a third of it), so long as everything is still readable at a glance from ~5-7 feet away, but then how do I handle new notifications in this case, if previous ones are still on screen? Shift them up the screen (so they’re in newest-oldest/top-bottom order), prematurely removing the oldest notification, or let notifications time out normally and always occupy the “slots” as they’re available?
  • Allow the notification window (containing the notifications) to be shown manually/such that the notifications or the window containing them, never disappear(s), so that the notifications can be scrolled through (for example) if the user hears an aural warning sound/notification, but that then would mean a lot of scrolling… Not sure about this one.

The states I’m tracking are of the scans themselves, of items as follows:
Okay (the item exists in the list and has been scanned only once).
Orphan (the item doesn’t exist in the list and has been scanned only once).
Duplicate (the item exists in the list and has been scanned more than once).
Duplicate orphan (the item doesn’t exist in the list and has been scanned more than once).

I can’t track a lack of barcode sticker as said sticker is what’s needed to track state in this part of the process which is essentially validation of the information provided at the previous step; manual data entry of hardware into the system, as well as attaching barcode stickers. Note that I don’t have direct access to the database itself, which is why I have to list “Orphan” for orphaned items instead of displaying the actual pallet to which the scanned item belongs.


download bmml source – Wireframes created with Balsamiq Mockups

Thank you very much, in advance, for your help, and apologies for the length of this post! Feel free to offer advice, alternative mockups or ideas, or comment on my proposed mockup which represents a single scan-notification as well, as I’d like to offer as much information as I can with what little space I have (given that it needs to be visible and understandable at a glance from a distance).