最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

functions - load CSS only for administrators on backend

programmeradmin1浏览0评论

I am trying to load a custom styles sheet but only for administrators

My code works fine by itself:

function admin_style() {
  wp_enqueue_style('admin-styles', get_template_directory_uri().'/admin.css');
}
add_action('admin_enqueue_scripts', 'admin_style');

However, when I try to create a conditional based on the role, it can not get it to fire:

function role_exists( $role ) {
  if( ! empty( $role ) ) {
    return $GLOBALS['wp_roles']->administrator( $role );
  }
  return false;
}

function admin_style() {
  wp_enqueue_style('admin-styles', get_template_directory_uri().'/admin.css');
}

if( role_exists( 'administrator' ) ) {
  return
  add_action('admin_enqueue_scripts', 'admin_style');
}

I am trying to load a custom styles sheet but only for administrators

My code works fine by itself:

function admin_style() {
  wp_enqueue_style('admin-styles', get_template_directory_uri().'/admin.css');
}
add_action('admin_enqueue_scripts', 'admin_style');

However, when I try to create a conditional based on the role, it can not get it to fire:

function role_exists( $role ) {
  if( ! empty( $role ) ) {
    return $GLOBALS['wp_roles']->administrator( $role );
  }
  return false;
}

function admin_style() {
  wp_enqueue_style('admin-styles', get_template_directory_uri().'/admin.css');
}

if( role_exists( 'administrator' ) ) {
  return
  add_action('admin_enqueue_scripts', 'admin_style');
}
Share Improve this question edited May 23, 2019 at 20:46 Eric D. asked May 23, 2019 at 20:39 Eric D.Eric D. 32 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 1

This is what I use, tested and works...

function wpse_admin_styles(){
    $user = wp_get_current_user();

    if( !empty($user) && count(array_intersect(["administrator"], (array) $user->roles ))) {
        wp_enqueue_style(
            'admin_css', 
            get_stylesheet_directory_uri() . '/css/admin-styles.css', array(), filemtime( get_stylesheet_directory() . '/css/admin-styles.css') 
        );
    }
}

add_action('admin_enqueue_scripts', 'wpse_admin_styles');
发布评论

评论列表(0)

  1. 暂无评论