This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.



WordPress has lots of beautiful themes, but personalizing a design can be difficult and time-intensive. Styles changes that. Styles gives you creative control in one consistent interface – the WordPress theme customizer. Styles lets you make your site your own. 🙂

Features of the plugin

  • Instant previews
  • Text size
  • Google Fonts with previews and search
  • Text colors
  • Border colors
  • Background colors
  • Hundreds of options
  • Consistent interface and names in every theme
  • Built on WordPress customizer, so Styles grows as WordPress grows

Styles and options for all built-in WordPress themes are free.

Free Theme Support Add-ons

Developer Resources



  • TwentyEleven header settings.
  • Google Fonts with preview and search.
  • All TwentyEleven sections.
  • TwentyEleven menu settings.


  1. Upload the styles folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Install and activate your theme’s support plugin. If you are running TwentyTen through TwentyThirteen, Styles will prompt you to do this. If you would like to use Styles with other themes, check code your own.
  4. Edit your site under Appearance > Customize


Does Styles support my theme?

Watch this walkthrough for a developer’s guide on how to add support. Adding one option takes only one line of code.

If coding isn’t for you, contact us for help adding options to your theme.

Will this plugin slow down my site?

No! Styles is very careful about only loading what is needed to get its job done.
Once done editing, stylesheets are cached and loaded for your sites users as quickly as possible.
In non-editing mode, Styles only outputs one cached CSS block to your site’s header.


Мартъи 23, 2021 2 replies
After last wp arrived, this plugin generates an error message on top of Every page, about a function code Continue
Апрель 16, 2017
Why do I make myself work so hard trying all my limited css skills to change link colors when a plugin like Styles is there to make it so much easier? I tried every css variation I could muster and all failed. One try of Styles and it all was done in a micro second. Well done WordPress,bravo Styles!
Сентябрь 3, 2016 4 replies
I am really pleased to recommend the Styles plugin. It is a wonderful resource that enables even an uncertain website builder make a site that looks good. Unfortunately I can only recommend it for use on single sites. On my multi-site it came into conflict with a theme/plugin that offers a similar control over typography that I have running on a different site within the same multi-site. This is why I give it 4 starts rather than 5. I can also say I am very satisfied with the help provided in the Styles forum by the plugin developer.
Read all 33 reviews

Contributors & Developers

“Styles” is open source software. The following people have contributed to this plugin.


Translate “Styles” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Fix: jQuery Migrate compatibility.
  • Fix: PHP 8 compatibility.


  • Fix: Remove notices.


  • New: Links to free themes in readme.
  • New: Dismissable notices.
  • New: PHP7 compatability. Thanks @davidbe929.


  • New: Linked auto-install for styles-twentyfifteen by @dim.
  • Fix: Avoid “Styles is almost ready” notice caused by plugins such as usernoise.



  • Fix: Resolve issues with option to reset settings. Thanks [@violacase](] @JiveDig for the reports.


  • New: Option to reset all settings.
  • New: Option to enable debug mode to help when responding to support tickets.


  • Fix: Error in CSS output caused by some WordPress translations, such as Hebrew.
  • New: Include the optimization that was supposed to be in 1.1.5. (Load standard fonts via javascript to reduce memory usage.)


  • New: Load standard fonts via javascript to reduce memory usage. This may fix issues with hosts that restrict memory usage, causing the Customizer to not fully load.


  • Fix: Support for custom suffixes.
  • New: Detect :active selectors in custom options.


  • Fix: Error when attempting to upgrade when no fonts were used.
  • Fix: Issue that would cause saved CSS and previews to not completely apply when a Standard Font with a space in the name was selected.
  • Fix: Some translations would cause CSS to not output completely.
  • Fix: Issue with IIS servers that would cause Google Fonts to not appear. Thanks @Rivanni for the error report.


  • Fix: Attempted fix for IIS servers.


  • Fix: Missing Google Fonts after save.


  • New: Previews in font menu. View screenshot.
  • New: Search to filter font list.
  • New: Updated Google Fonts.
  • New: Google Fonts update in preview without page reload.
  • New: Simplified plugin loader with nice notices for old WordPress versions.
  • New: Update scripts to convert old font format to new format.
  • Note: The update is well-tested, but in case of any issues, the upgrade script backs up old settings in wp_options for 30 days as _transient_storm-styles-THEME-NAME-pre-1.1.0.



  • New: Increase memory limit for logged in users. May fix a white screen some users experienced when attempting to preview their site.


  • New: Filter styles_get_group_id for merging with existing groups.


  • Fix: Customize Theme button loads customizer for current site in network. Resolves #38. Thanks @jivedig.
  • Fix: Child and parent theme options no longer effect each other. Resolves #29. Thanks @jivedig.


  • Fix: Don’t display install notice for child themes. Thanks @ektreyes for the report.


  • New: Allow notices to be disabled with a filter: add_filter( 'styles_disable_notices', '__return_true' );
  • New: Don’t display install notices for default themes if a plugin is installed and then renamed.
  • Fix: Don’t display install notices for non-default themes. Resolves a regression introduced in 1.0.12.


  • Fix: Improve detection of plugins adding support for themes
    • Add support if `Plugin Name: Styles: NAME` matches `Theme Name: NAME`
    • Add support if directory names `styles-NAME` and `theme/NAME` match
    • Make theme check case-insensitive. Resolves issues for themes with capitalized folder names, like iThemes child themes.
    • Thanks [@JiveDig]( for pointing some of these issues out.
  • Fix: Improve activation notices for child themes
    • Add theme options for a parent theme if they’re activated, but don’t show a notice requiring them.
    • Detect and display which theme a plugin is trying to add support for.
    • Correctly display the plugin name requesting activation in cases where the plugin doesn’t follow the recommended naming convention.



  • Fix: Ensure preview javascript works when WordPress installed in a child directory. Props @westonruter.
  • Fix: Prevent warnings when no Styles child plugins exist. Thanks @pictureitsolved
  • New: Add styles_json_files filter to allow plugin authors to enqueue arbitrary customize.json files. customize.json in child plugins and themes are still enqueued automatically.


  • Fix: Resolve regression in 1.0.8 that caused saved styles to not display.



  • Fix: Clearing a setting now updates the preview without a page refresh.
  • Fix: Settings requiring “!important” are fixed and support live preview.
  • Fix: Plugin header settings no longer conflicts with other plugins.
  • Fix: Remove all options when uninstalling on a site network.
  • Change: ‘color’ label now says ‘text color’.
  • New: Contact links and developer resources added to readme


  • New: Add installation notice to Customizer.


  • Fix: Resolve blank screen that could appear when installing on a new theme.


  • Fix: Correctly set outer background color


  • Fix: Google fonts loading correctly once saved.


  • Fix: Remove front-end PHP notice. (Minor; Only matters if WP_DEBUG is enabled.)


  • Fix: Remove Customizer PHP notice. (Minor; Only matters if WP_DEBUG is enabled.)


  • New: Completely rewrite Styles to use the WordPress Customizer API. Whew! That was a lot of work, but will allow us to grow closely with WordPress going forward.
  • New: Styles 1.0 does not import 0.5.2 settings. However, you can always reinstall Styles 0.5.3 to get your old settings back.
  • New: TwentyTwelve support.
  • New: TwentyThirteen support.
  • New: Remove gradients and background images. Sorry! We had to simpify and prioritize in the rewrite. If many users find Styles useful, we hope to bring these features back!
  • New: Instant preview for many options using Customizer postMessage


  • Fix: Display of icons in cases where WordPress is installed in a subdirectory or wp-content is moved. Fixes

  • Fix: Transparent background option
  • Fix: Display of unavailable theme options


  • Fix: Issue that would prevent Font styles from outputting if another option wasn’t set on the same element.


  • New: Load themes from API: Allows for theme support to be added without plugin updates.
  • New: Data structure: Allow settings to migrate from theme to theme
  • New: Automatically rebuild CSS when theme is switched
  • New: Wrap font settings into other options. This sets the stage to simplify the user interface in a future version.
  • New: Add option to hide text and replace with image on any element
  • New: Expand TwentyTen options
  • New: Gradient Picker: Fix add marker, drag to remove marker
  • Fix: Massive code clean-up: Removed 1,198 lines of code; modified 2,488
  • Fix: Minor UI tweaks


  • Fix: Saved CSS being one update behind
  • Fix: Initial values of fields & background color picker
  • Fix: Preview update stall
  • Fix: Background value when no image selected
  • Fix: Background replacement matching


  • Initial public release.