When registering a post type, always register your taxonomies using
the taxonomies argument. If you do not, the taxonomies and post type
will not be recognized as connected when using filters such as
parse_query or pre_get_posts. This can lead to unexpected results and
failures.http://codex.wordpress.org/Function_Reference/register_post_type#Taxonomies
Your argument list for register_post_type
needs to include:
'taxonomy' => array('ct1','ct2','ct3')
Your custom taxonomies have to be registered first.
Alternately, you can use register_taxonomy_for_object_type
.
register_taxonomy_for_object_type( 'ct1', 'yourcpt' );
register_taxonomy_for_object_type( 'ct2', 'yourcpt' );
register_taxonomy_for_object_type( 'ct3', 'yourcpt' );
Again, your custom taxonomies have to be registered first.