Taxonomía personalizada como categorías: ¿Desea eliminar la pestaña "más utilizada"?

2

Creé una taxonomía personalizada para un tipo de publicación personalizado que funciona como tipo de categorías para este tipo de publicación.

El Metabox para mi taxonomía tiene dos pestañas. Una para mis Categorías y una segunda pestaña llamada "Más Usadas", al igual que las categorías normales para las publicaciones normales.

¿Hay alguna forma de deshacerse de esta pestaña "Más utilizadas"?

¿Gracias por adelantado?

    
pregunta mathiregister 12.04.2012 - 16:11

2 respuestas

2

Sí: primero debe "anular el registro" que crea el metabox que WordPress crea automáticamente:

add_action( 'admin_menu', 'myprefix_remove_meta_box');  
function myprefix_remove_meta_box(){  
   remove_meta_box('my-tax-metabox-id', 'post', 'normal');  
}  

Donde my-tax-metabox-id es el ID de tu metabox. Luego, vuelva a registrar el metabox que proporciona su propia función de devolución de llamada que produce en la salida:

//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';  
  } 

Entonces, es simplemente una cuestión de imitar el marcador de metabox jerárquico "predeterminado" pero quitar las pestañas. Puede encontrar este artículo que escribí, donde Hago esto para un propósito ligeramente diferente, útil. En resumen, visite: enlace

Esa es la función responsable de generar metaboxes jerárquicos: querrá cambiar eso ligeramente (eliminando las pestañas y definiendo la variable $taxonomy etc.

    
respondido por el Stephen Harris 12.04.2012 - 20:41
2

Para cualquiera que busque una solución más simple, puede agregar el siguiente CSS al backend, por ejemplo, suponiendo que la taxonomía en cuestión es "eventtype":

/* make sure tabs and the popular div itself are not shown */
#eventtype-pop,#eventtype-tabs{
    display: none !important;
}
/* make sure the All Terms div is always shown, and remove extra spacing and styles */
#eventtype-all,#eventtype-all,#eventtype-all ul,#eventtype-all ul{
    display: block !important;
    padding:0;
    margin:0;
    background: transparent;
    border:0;
}

Puede agregar este CSS a un CSS de administrador existente o con un simple enlace de administrador:

add_action('admin_head', 'adminCSS');

function adminCSS(){
    ?><style type='text/css'>
    /* make sure tabs and the popular div itself are not shown */
    #eventtype-pop,#eventtype-tabs{
        display: none !important;
    }
    /* make sure the All Terms div is always shown, and remove extra spacing and styles */
    #eventtype-all,#eventtype-all,#eventtype-all ul,#eventtype-all ul{
        display: block !important;
        padding:0;
        margin:0;
        background: transparent;
        border:0;
    }
    </style><?php
}

Este ejemplo muestra CSS en línea, pero muy bien podría agregar un CSS externo con todas las reglas que necesita.

    
respondido por el guidod 24.09.2014 - 23:52

Lea otras preguntas en las etiquetas