¿Cómo elimino la barra de administración (estilo) solo del frontend?

10

Cuando inicie sesión, la barra de administración agrega lo siguiente a mi página <head> section:

<style media="screen" type="text/css">
    html { margin-top: 28px !important; }
    * html body { margin-top: 28px !important; }
</style>

Ahora, puedo eliminar esto deshabilitando la barra de administración

/* Disable the Admin Bar. */
add_filter( 'show_admin_bar', '__return_false' );

o eliminándolo por completo

/* Remove admin bar */
remove_action('init', 'wp_admin_bar_init');

Me gustaría mantener la barra de administración en la interfaz de administración y solo quitar el CSS de la interfaz.

Ya uso el restablecimiento de CSS donde configuré margin: 0px , pero el estilo de la barra de administración anula esto.

Entonces, ¿cómo puedo eliminar el estilo de la parte frontal?

PS. Sé que puedo deshabilitar la barra de administración por usuario, pero eso no es lo que quiero.

    
pregunta Steven 05.10.2011 - 10:28

4 respuestas

20
function hide_admin_bar_from_front_end(){
  if (is_blog_admin()) {
    return true;
  }
  return false;
}
add_filter( 'show_admin_bar', 'hide_admin_bar_from_front_end' );
    
respondido por el Maxim Krizhanovsky 05.10.2011 - 10:47
5

Si desea eliminar la barra de administración (barra de herramientas) Y el bump CSS de su página, use esto:

function wpse_99333_hide_admin_bar_from_front_end(){
  if ( is_blog_admin() ) {
    return true;
  }
  remove_action( 'wp_head', '_admin_bar_bump_cb' );
  return false;
}
add_filter( 'show_admin_bar', 'wpse_99333_hide_admin_bar_from_front_end' );

La función _admin_bar_bump_cb es la que inserta el CSS (ubicado en wp-includes / admin-bar.php)

    
respondido por el jjeaton 14.05.2013 - 01:22
1

Haría algo como esto:

Eliminar la barra de administración / CSS en la clase de cabecera / cuerpo

show_admin_bar(false);

o si solo quieres: Eliminar html margin-top CSS en <head>

function remove_admin_bar_bump() {
   remove_action('wp_head', '_admin_bar_bump_cb');
}
add_action('get_header', 'remove_admin_bar_bump');

Probado: Versión 4.7.3

    
respondido por el l2aelba 05.09.2016 - 13:27
0

Hace poco tuve que hacer esto, solo quería que se eliminaran los estilos CSS predeterminados de Wordpress (para la barra de administración), pero quería que la barra de administración permaneciera. Estaba mostrando la barra de administración en la parte inferior de la página, no en la parte superior.

Esto es lo que se deshizo de inyectar los estilos de la función _admin_bar_bump_cb para mí. Agregué lo siguiente a mi functions.php

// remove wordpress trying to style the admin bar with inline css
function hide_admin_bar_from_front_end(){
  remove_action( 'wp_head', '_admin_bar_bump_cb' );
  return true;
}
add_filter( 'show_admin_bar', 'hide_admin_bar_from_front_end' );
    
respondido por el andxyz 08.11.2013 - 21:00

Lea otras preguntas en las etiquetas