Yes – you need to first ‘de-register’ the metabox WordPress automatically creates:
add_action( 'admin_menu', 'myprefix_remove_meta_box');
function myprefix_remove_meta_box(){
remove_meta_box('my-tax-metabox-id', 'post', 'normal');
}
Where my-tax-metabox-id
is the ID of your metabox. Then ‘re-register’ the metabox providing your own callback function which produces in the output:
//Add new taxonomy meta box
add_action( 'add_meta_boxes', 'myprefix_add_meta_box');
function myprefix_add_meta_box() {
add_meta_box( 'mytaxonomymetabox_id', 'My Taxonomy','myprefix_mytaxonomy_metabox','post' ,'side','core');
}
function myprefix_mytaxonomy_metabox( $post ) {
//This function determines what displays in your metabox
echo 'This is my taxonomy metabox';
}
Then it is simply a matter of mimicking the ‘default’ hierarchal metabox markup but removing the tabs. You might find this article I wrote, where I do this for a slightly different purpose, helpful. In short check out: http://core.trac.wordpress.org/browser/tags/3.3/wp-admin/includes/meta-boxes.php#L307
That is the function responsible for outputting hierarchal metaboxes – you’ll want to change that slightly (removing the tabs, and defining the $taxonomy
variable etc.