wordpress主题开发中工具栏admin_bar_menu的处理

我们在登录wordpress后,通常情况是会显示一个黑色的工具条,会遮盖我们前台内容。这个工具条在PC端的高度为32px,在手机端上的高度为48px。我们一般有两种情况:

1、将工具条彻底禁止

add_filter( 'show_admin_bar', '__return_false' );
或
show_admin_bar( false );

2、对工具条进行定制

<?php
//工具栏admin_bar_menu处理
function hide_adminbar() {
    //只在鼠标移至顶部时显示工具栏admin_bar_menu
    // $hide_adminbar = '<script type="text/javascript">  
    //     $(document).ready( function() {  
    //         $("#wpadminbar").fadeTo( "slow", 0 );  
    //         $("#wpadminbar").hover(function() {  
    //             $("#wpadminbar").fadeTo( "slow", 1 );  
    //         }, function() {  
    //             $("#wpadminbar").fadeTo( "slow", 0 );  
    //         });  
    //     });  
    // </script>  
    // <style type="text/css">  
    //     html { margin-top: -28px !important; }  
    //     * html body { margin-top: -28px !important; }  
    //     #wpadminbar {  
    //         -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";  
    //         filter: alpha(opacity=0);  
    //         -moz-opacity:0;  
    //         -khtml-opacity:0;  
    //         opacity:0;  
    //     }  
    //     #wpadminbar:hover, #wpadminbar:focus {  
    //         -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";  
    //         filter: alpha(opacity=100);  
    //         -moz-opacity:1;  
    //         -khtml-opacity:1;  
    //         opacity:1;  
    //     }
    // </style>';
    //下移导航条,菜单栏,移动搜索框
    $hide_adminbar = '<style>nav.header {margin-top: 32px !important;}.navigation\:sideblock .sidebar-panel {margin-top: 32px !important;}.mobilesearch-panel {margin-top: 46px !important;}</style>';
    //工具栏透明
    // $hide_adminbar = '<style>#wpadminbar { filter:alpha(opacity=50); opacity:0.5; }</style>';

    //更改顶部栏颜色
    // $hide_adminbar = '<style type="text/css">  
    //     #wpadminbar *, #wpadminbar{ color:#ffffff;text-shadow:#444444 0 -1px 0; }  
    //     #wpadminbar{  
    //         background-color:#003399;  
    //         background-image:-ms-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:-moz-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:-o-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:-webkit-gradient(linear,left bottom,left top,from(#000033),to(#003399));  
    //         background-image:-webkit-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:linear-gradient(bottom,#000033,#003399 5px);  
    //     }  
    //     /* menu separators */  
    //     #wpadminbar .quicklinks>ul>li{border-right:1px solid #003399;}  
    //     #wpadminbar .quicklinks>ul>li>a,#wpadminbar .quicklinks>ul>li>.ab-emptyempty-item{border-right:1px solid #000033;}  
    //     #wpadminbar .quicklinks .ab-top-secondary>li{border-left:1px solid #000033;}  
    //     #wpadminbar .quicklinks .ab-top-secondary>li>a,#wpadminbar .quicklinks .ab-top-secondary>li>.ab-emptyempty-item{border-left:1px solid #003399;}  
    //     /* menu hover color and hover link color */  
    //     #wpadminbar.nojs .ab-top-menu>li.menupop:hover>.ab-item,#wpadminbar .ab-top-menu>li.menupop.hover>.ab-item{background:#333333;color:#ffffff;}  
    //     #wpadminbar .hover .ab-label,#wpadminbar.nojq .ab-item:focus .ab-label{color:#ffffff;}  
    //     #wpadminbar .menupop.hover .ab-label{color:#ffffff;}  
    //     /* menu, on mouse over hover colors */  
    //     #wpadminbar .ab-top-menu>li:hover>.ab-item,#wpadminbar .ab-top-menu>li.hover>.ab-item,#wpadminbar .ab-top-menu>li>.ab-item:focus,#wpadminbar.nojq .quicklinks .ab-top-menu>li>.ab-item:focus{  
    //         color:#fafafa;  
    //         background-color:#000033;  
    //         background-image:-ms-linear-gradient(bottom,#003399,#000033);  
    //         background-image:-moz-linear-gradient(bottom,#003399,#000033);  
    //         background-image:-o-linear-gradient(bottom,#003399,#000033);  
    //         background-image:-webkit-gradient(linear,left bottom,left top,from(#003399),to(#003399));  
    //         background-image:-webkit-linear-gradient(bottom,#003399,#000033);  
    //         background-image:linear-gradient(bottom,#003399,#000033);  
    //     }  
    //     /* menu item links hover color */  
    //     #wpadminbar .menupop li:hover,#wpadminbar .menupop li.hover,#wpadminbar .quicklinks .menupop .ab-item:focus,#wpadminbar .quicklinks .ab-top-menu .menupop .ab-item:focus{background-color:#ccffcc;}  
    //     /* menu item non-link colors */  
    //     #wpadminbar .ab-submenu .ab-item{color:#333333;}  
    //     /* menu item link colors */  
    //     #wpadminbar .quicklinks .menupop ul li a,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li a,#wpadminbar.nojs .quicklinks .menupop:hover ul li a{color:#0099cc;}  
    //     /* my sites hover color */  
    //     #wpadminbar .quicklinks .menupop .ab-sub-secondary>li:hover,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li.hover,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li .ab-item:focus{background-color:#dfdfdf;}  
    //     /* update menu colors */  
    //     #wpadminbar .quicklinks a span#ab-updates{background:#eeeeee;color:#333333;}  
    //     #wpadminbar .quicklinks a:hover span#ab-updates{background:#ffffff;color:#000000;}  
    //     /* howdy menu */  
    //     #wpadminbar .ab-top-secondary{  
    //         background-color:#003399;  
    //         background-image:-ms-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:-moz-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:-o-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:-webkit-gradient(linear,left bottom,left top,from(#000033),to(#003399));  
    //         background-image:-webkit-linear-gradient(bottom,#000033,#003399 5px);  
    //         background-image:linear-gradient(bottom,#000033,#003399 5px);  
    //     }  
    //     /* Howdy menu, username text color in dropdown */  
    //     #wpadminbar #wp-admin-bar-user-info .display-name{color:#333333;}  
    //     #wpadminbar #wp-admin-bar-user-info .username{color:#999999;}  
    //     /* search */  
    //     #wpadminbar #adminbarsearch .adminbar-input{color:#ccc;text-shadow:#444 0 -1px 0;background-color:rgba(255,255,255,0);}  
    //     #wpadminbar #adminbarsearch .adminbar-input:focus{color:#555;text-shadow:0 1px 0 #fff;background-color:rgba(255,255,255,0.9);}  
    //     #wpadminbar.ie8 #adminbarsearch .adminbar-input{background-color:#003399;}  
    //     #wpadminbar.ie8 #adminbarsearch .adminbar-input:focus{background-color:#fff;}  
    //     #wpadminbar #adminbarsearch .adminbar-input::-webkit-input-placeholder{color:#ddd;}  
    //     #wpadminbar #adminbarsearch .adminbar-input:-moz-placeholder{color:#ddd;}  
    // </style>';

    
    echo $hide_adminbar;  
}  
/* wp-admin area */  
if ( is_admin() ) {
    add_action( 'admin_head', 'hide_adminbar' );  
}
/* websites */  
if ( !is_admin() ) {
    add_action( 'wp_head', 'hide_adminbar' );  
}

3、当然,在定制过程中,你可能想进行一些其他操作

add_action( 'admin_bar_menu', 'modify_admin_bar' );

function modify_admin_bar( $wp_admin_bar ){
  // do something with $wp_admin_bar;
}

Methods

比如添加:

add_action( 'admin_bar_menu', 'admin_bar_item', 500 );
function admin_bar_menus( WP_Admin_Bar $wp_admin_bar ) {

    $parent_slug = 'license-manager-wppt';

    $wp_admin_bar->add_menu( array(
        'id'    => $parent_slug,
        'parent' => 'top-secondary',
        'group'  => null,
        'title' => __( 'License Manager', 'lmfwppt' ),
        'href'  => admin_url('admin.php?page=license-manager-wppt'),
    ) );

}

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享