Klar, benutze einfach CSS und den 'admin_head'Haken, damit es verschwindet. Ich glaube, das ist was Sie suchen?

(Quelle: mikeschinkel.com )
Fügen Sie einfach Folgendes zur functions.phpDatei Ihres Themas oder zu einer .phpDatei eines Plugins hinzu, das Sie möglicherweise schreiben. Beachten Sie, dass ich einen 'init'Haken eingefügt habe, um den Post-Typ "Home" und die Taxonomie "Bath" zu definieren, damit andere dem Beispiel leichter folgen können. Beachten Sie auch , dass , wenn Ihre Taxonomie genannt wird Baths“ Sie werden die CSS - Selektor ändern müssen #newbaths_parentstatt #newbath_parent:
add_action('admin_head','remove_bath_parents');
function remove_bath_parents() {
global $pagenow;
if (in_array($pagenow,array('post-new.php','post.php'))) { // Only for the post add & edit pages
$css=<<<STYLE
<style>
<!--
#newbath_parent {
display:none;
}
-->
</style>
STYLE;
echo $css;
}
}
add_action('init','add_homes_and_baths');
function add_homes_and_baths() {
register_post_type('home',
array(
'label' => 'Homes',
'public' => true,
'rewrite' => array('slug' => 'homes'),
'hierarchical' => false,
)
);
register_taxonomy('bath', 'home', array(
'hierarchical' => true,
'label' => 'Baths',
'rewrite' => array('slug' => 'baths' ),
)
);
}
AKTUALISIEREN
Ich habe also anscheinend den Radioknopf-Teil der Frage verpasst . Leider macht WordPress dies nicht einfach, aber Sie können es durch die Verwendung der PHP-Ausgabepufferung (über die ob_start()und ob_get_clean()-Funktionen) erreichen. Suchen Sie einfach einen Hook, bevor die Metabox ausgegeben wird ( 'add_meta_boxes'), und einen Hook, nachdem sie ausgegeben wurde ( 'dbx_post_sidebar'), und durchsuchen Sie dann die erfassten HTML für 'checkbox'und ersetzen mit 'radio', Echo auf den Bildschirm und fertig! Code folgt:
add_action('add_meta_boxes','mysite_add_meta_boxes',10,2);
function mysite_add_meta_boxes($post_type, $post) {
ob_start();
}
add_action('dbx_post_sidebar','mysite_dbx_post_sidebar');
function mysite_dbx_post_sidebar() {
$html = ob_get_clean();
$html = str_replace('"checkbox"','"radio"',$html);
echo $html;
}
Und die Beweise:

(Quelle: mikeschinkel.com )