Code Snippet to Add Custom CSS to WordPress Admin Area

Johan K. Jan 23, 2025 Admin Customization
How can I change the colors and fonts in the WordPress admin area to make it more personal?
What is the code snippet to enqueue custom CSS for the WordPress admin area, and where should it be added in my theme or plugin?
Andy answered Jan 23, 2025

Adding Custom CSS to WordPress Admin Area

Custom Code Solution

Here's how to add custom CSS to your WordPress admin area using the admin_enqueue_scripts hook. This code should be added to your theme's functions.php file or in a custom plugin:

This code loads a custom CSS file for the admin area:

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

Create a file named admin-style.css in your theme's /css/ directory and add your custom CSS. Here's a sample CSS file with common admin customizations:

/* Main admin menu background */
#adminmenu, #adminmenuback, #adminmenuwrap {
    background: #2c3338;
}

/* Admin menu text color */
#adminmenu a {
    color: #fff;
}

/* Admin menu hover state */
#adminmenu li.menu-top:hover,
#adminmenu li.opensub > a.menu-top {
    background-color: #1e2327;
}

/* Custom fonts for admin area */
body.wp-admin {
    font-family: 'Arial', sans-serif;
}

/* Dashboard widgets */
.postbox {
    border-radius: 5px;
}

/* Admin header */
#wpadminbar {
    background: #1e2327;
}

Alternative Direct Method

If you prefer to add styles directly without creating a separate CSS file, use this code in functions.php:

function add_inline_admin_styles() {
    echo '<style>
        #adminmenu, #adminmenuback, #adminmenuwrap { background: #2c3338; }
        #adminmenu a { color: #fff; }
        #wpadminbar { background: #1e2327; }
        /* Add more styles here */
    </style>';
}
add_action('admin_head', 'add_inline_admin_styles');

Plugin Solutions

If you prefer using a plugin, here are reliable options:

  1. Admin Menu Editor - Customize admin menu appearance and organization
  2. AG Custom Admin - Complete admin panel customization
  3. Ultimate Dashboard - Customize WordPress admin dashboard and styling

Best Practices

  • Test your changes in a staging environment first
  • Use specific selectors to avoid conflicts with other admin styles
  • Consider using CSS variables for colors to make future changes easier
  • Keep specificity in mind to ensure your styles override default admin styles
  • Backup your changes before implementing them
  • Consider adding a color scheme that matches your brand

Remember to adjust the colors, fonts, and other values in the CSS to match your desired design. The provided code examples use placeholder values that you can easily modify.