I have searched the net with no success on what should be an easy thing.
I have a highly customized blog with pages, sub pages and posts. While I rely heavily on the use of categories and tags I don’t want them to be viewable in a url. The same goes for authors and date categories. Basically I wan’t to throw a 404 error if someone tries to access these pages. Can someone point me in the right direction? Thanks!
The following should not be accessible:
example.com/category/books/
example.com/tag/ebooks/
example.com/author/dickens/
example.com/2012/10/
building on chrisguitarguy’s answer here is a quick snippet you can drop in your theme’s functions.php file to do job
I wrote a plugin for this — that needs some updating, but it should still work fine.
Essentially you hook in some place late after WordPress knows what page is requested (like
template_redirect
), use one of the conditional functions and either use$wp_query->set_404()
or just redirect the user to a page of your choice.To disable categories, tags, author and date archives: