Deshabilitar el colapso de las cajas de meta de administración

2

He estado intentando desactivar la capacidad de contraer las cajas de metadatos del administrador. Por lo visto, WordPress crea esta funcionalidad en postbox.js / wp-admin / js / pero no he podido encontrar un gancho o JavaScript adecuado para sobrescribir las funciones integradas.

Este es un código de prueba con el que estoy trabajando:

jQuery('.postbox h3, .postbox .handlediv, .hndle').bind('click', function(e) {

    e.preventDefault();
    return false;

});

¿Alguna idea sobre cómo podría lograrse esto?

    
pregunta Scott 24.10.2011 - 16:42

2 respuestas

3

Agregue esto a su archivo de funciones y eliminará las opciones de metabox:

function kill_postbox(){
    global $wp_scripts;
    $footer_scripts = $wp_scripts->in_footer;
    foreach($footer_scripts as $key => $script){
        if('postbox' === $script)
            unset($wp_scripts->in_footer[$key]);
    }
}
add_action('admin_footer', 'kill_postbox', 1);
    
respondido por el Brian Fegter 25.10.2011 - 10:56
1

Para la versión actual de Wordpress (4.5.3) se me ocurre la siguiente solución que elimina el controlador de metaboxes de cierre y abre todos los metaboxes cerrados previamente.

php (plugin.php)

function add_admin_scripts( $hook ) {    
  wp_register_script( 'disable_metabox_toggling', plugin_dir_url(__FILE__) . 'index.js', 'jquery', '1.0.0', true);
  wp_enqueue_script( 'disable_metabox_toggling' );
}
add_action( 'admin_enqueue_scripts', 'add_admin_scripts', 10, 1 );

js (index.js)

(function($){
  $(document).ready(function() {
     $('.postbox .hndle').unbind('click.postboxes');
     $('.postbox .handlediv').remove();
     $('.postbox').removeClass('closed');
  });
})(jQuery);

Si desea utilizarlo dentro del tema, debe reemplazar plugin_dir_url(__FILE__) con get_template_directory_uri() o get_stylesheet_directory_uri() para un tema secundario.

    
respondido por el jmarceli 22.06.2016 - 01:00

Lea otras preguntas en las etiquetas