ログインすると、管理バーは私のページの<head>
セクションに以下を追加します。
<style media="screen" type="text/css">
html { margin-top: 28px !important; }
* html body { margin-top: 28px !important; }
</style>
今、私は管理バーを無効にすることでこれを削除することができます
/* Disable the Admin Bar. */
add_filter( 'show_admin_bar', '__return_false' );
または完全にそれを削除
/* Remove admin bar */
remove_action('init', 'wp_admin_bar_init');
管理バーを管理インターフェイスに残してCSSをフロントエンドから削除するだけです。
私はmargin: 0px
を設定したところですでにCSSリセットを使用していますが、管理バーのスタイルはこれを上書きします。
では、どうすればフロントエンドからスタイルを削除できますか?
PS。ユーザーごとに管理バーを無効にできることはわかっていますが、それは私が望むことではありません。
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' );
あなたのページから管理バー(ツールバー)とバンプCSSを削除したい場合は、これを使用してください:
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' );
_admin_bar_bump_cb
関数はCSSを挿入するものです(wp-includes/admin-bar.phpにあります)。
私はこのようなことをするだろう:
head/bodyクラスの管理バー/ CSSを削除する
show_admin_bar(false);
または単にあなたがしたい場合:<head>
内のhtml
margin-top CSSを削除する
function remove_admin_bar_bump() {
remove_action('wp_head', '_admin_bar_bump_cb');
}
add_action('get_header', 'remove_admin_bar_bump');
テスト済み: バージョン4.7.3
私は最近これをしなければなりませんでした、私はちょうど(管理バーのための)WordPressのデフォルトのインラインCSSスタイルを削除したかったのですが、私は管理バーを残したかったのです。上部ではなくページの下部に管理バーを表示していました。
これが私のために_admin_bar_bump_cb関数からスタイルを注入することを取り除いたものです。私は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' );