More of an open discussion than a question, really, because I know adding custom arguments to the post type object does work, but I'm wondering if it is technically wrong in any way.
Basically, when registering a post type:
$labels = array( 'name' => _x('Drews', 'post type general name'), 'singular_name' => _x('Drew', 'post type singular name'), 'add_new' => __('Add New'), 'add_new_item' => __('Add New Item'), 'edit_item' => __('Edit Item'), 'new_item' => __('New Item'), 'view_item' => __('View Item'), 'search_items' => __('Search Items'), 'not_found' => __('No Items found'), 'not_found_in_trash' => __('No Items found in Trash'), 'menu_name' => 'Archives' ); $rewrite = array( 'slug' => 'drews' ); $args = array( 'labels' => $labels, 'public' => true, 'show_in_menu' => true, 'query_var' => 'drews', 'rewrite' => $rewrite, 'has_archive' => true, 'hierarchical' => false, 'supports' => array('title','editor','author','comments'), '_drew_made_this' => true ); register_post_type('drews',$args);
Make note of the very last line in my $args array, '_drew_made_this' set to 'true'. This allows me to condition against this in several useful ways, sort of how you would filter against '_builtin' when using get_post_types(). Like I said, I know this works because I'm using it, but is there any potential for this to break WordPress in any weird way.