Como removo a barra de administração (estilo) apenas do frontend?

10

Quando conectado, a barra de administração adiciona o seguinte à minha página <head> seção:

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

Agora, posso remover isso desativando a barra de administração

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

ou removendo-o completamente

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

Eu gostaria de manter a barra de administração na interface de administração e remover apenas o CSS do front end.

Eu já utilizo a redefinição de CSS onde defino margin: 0px , mas o estilo da barra de administração substitui isso.

Então, como posso remover o estilo do front end?

PS. Eu sei que posso desativar a barra de administração por usuário, mas não é isso que eu quero.

    
por Steven 05.10.2011 / 10:28

4 respostas

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' );
    
por Maxim Krizhanovsky 05.10.2011 / 10:47
5

Se quiser remover a barra de administração (barra de ferramentas) E o bump CSS da sua página, use isto:

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' );

A função _admin_bar_bump_cb é aquela que insere o CSS (localizado em wp-includes / admin-bar.php)

    
por jjeaton 14.05.2013 / 01:22
1

Eu faria algo assim:

Remova a barra de administração / CSS na classe head / body

show_admin_bar(false);

ou se você quiser apenas: remover html margin-top CSS em <head>

function remove_admin_bar_bump() {
   remove_action('wp_head', '_admin_bar_bump_cb');
}
add_action('get_header', 'remove_admin_bar_bump');
Testado: Versão 4.7.3

    
por l2aelba 05.09.2016 / 13:27
0

Eu recentemente tive que fazer isso, eu só queria que os estilos de CSS embutidos padrão do wordpress (para a barra de administração) fossem removidos, mas eu queria que a barra de administração permanecesse. Eu estava exibindo a barra de administração na parte inferior da página, não no topo.

Aqui está o que se livrou de injetar os estilos da função _admin_bar_bump_cb para mim. Eu adicionei o seguinte ao meu 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' );
    
por andxyz 08.11.2013 / 21:00

Tags