I’m a sucker for custom post types, and also for archiving my tweets. [Ozh’ Tweet Archiver](http://planetozh.com/blog/my-projects/ozh-tweet-archiver-backup-twitter-with-wordpress/) hits the sweet spot between form and function; I added this filter to my `functions.php` so that I could keep tweets separate from posts without having to build a new blog.
I’m currently testing out a new version of my code to include custom post types in The Loop. So far, I haven’t found any functional differences. I’d like to do some things with post type archives and a possible `is_type()` function that would make my life easier when working with theme development, hence the change. I’m also trying out `any` instead of an array of post types.
I’m currently using custom post types and taxonomies extensively on this site, so it is very important to me to be able to see how I have catalogued a post, as well as being able to single out specific post types with a given taxonomy term while editing. The ideal place for this to happen is in the Admin Edit page.
The following set of functions grabs a list of available taxonomies for a given `post_type` and automatically adds columns to the Edit pages. This updated version does not have column information that disappears after using the Quick Edit AJAX on the Edit page. In addition, I’ve updated the taxonomy term links to actually work as filters on taxonomy and term.
The native WordPress functions [`wp_get_object_taxonomies`](http://codex.wordpress.org/Function_Reference/get_object_taxonomies), [`wp_get_object_terms`](http://codex.wordpress.org/Function_Reference/wp_get_object_terms), and [`get_the_term_list`](http://codex.wordpress.org/Function_Reference/get_the_term_list) can be used to create a generic function to list of all taxonomies and terms of any custom post type.
The WordPress Categories Widget currently only handles the `category` taxonomy. I’ve modified it to allow the user to select a taxonomy, and tied in the Tag Cloud Widget code to give the user the choice of display formats: list, dropdown, and cloud. Multiple instances are possible, providing the user with an easy method for displaying links to user-built taxonomy terms.
I wrote this function to allow me to use custom post types in my blog without having to fine-tune each template for their inclusion. It checks the query to see if `post_type` is set; if it is not set (as it would be on a specific post type’s archive page), it includes all public post types.