Thinking the next iteration of the content restriction framework.
Default post restriction terms
The theAverageDev Restricted Content plugin will take care of restricting posts using taxonomies to do so.
This works well on sites that are bootstrapped with no posts into them but should the content to be restricted already existing not only that content would not be restricted: that content would not show up at all.
I’m using the plugin, and two of its declinations (user role and user group based content restriction), in three projects and while I’ve been operating in the former scenario for two of them I need to work on existing content in the third one. I took some time to think this out and to decide that this is a feature that should be built in into the core plugin rather than into third-party created extensions.
Not a user-land plugin
The plugin I’ve built with developers in mind and not users. The competition in that segment is simply better at this job in UI and UX terms and I want a tool I can use spending more time adding features rather than removing them.
For this reason the plugin is not showing any UI to the user and willingly so.
Doing it well
The task of applying a default restriction, a set of taxonomy terms, to existing posts that might be in any number from 10 to thousands is not something to be taken lightly and I will probably approach it with a combination of Ajax calls and cron jobs; I still have to figure that out completely.
Some exploration and then down to the TDD desk again.