Widget CSS Classes gives you the ability to add custom classes and ids to your WordPress widgets
Please note that this plugin doesn’t enable you to enter custom CSS. You’ll need to edit your theme’s style.css or add another
plugin that allows you to input custom CSS.
This plugin also adds additional classes to widgets to help you style them easier:
- widget-first: added to the first widget in a sidebar
- widget-last: added to the last widget in a sidebar
- widget-odd: added to odd numbered widgets in a sidebar
- widget-even: added to even numbered widgets in a sidebar
- widget-#: added to every widget, such as widget-1, widget-2
- Adds a text field to a widget for defining a class
- You can specify multiple classes by putting a space between them
- Optionally adds checkboxes with predefined classes
- Optionally adds a text field to add an id to a widget
- Adds first and last classes to the first and last widget instances in a sidebar
- Adds even/odd classes to widgets
- Adds number classes to widgets
- Fully translatable
- Multi-site compatible
- Compatible with Widget Logic, Widget Context, and WP Page Widget plugins
- Has filters and hooks for customizing output including class names
Widget Context compatibility fix provided by Joan Piedra
Slovak translation by Branco WebHostingGeeks.com
Polish translation added, Slovak translation files renamed by Tomasz Wesołowski
Spanish translation by Maria Ramos at WebHostingHub
Serbo-Croatian translation by Borisa Djuraskovic at WebHostingHub
Dutch translation and predefined classes fix by Jory Hogeveen at Keraweb
Russian translation by Наталия Завьялова
Swedish translation by Olle Gustafsson
Fix ids notice by Ricardo Lüders
This file is part of Widget CSS Classes.
Widget CSS Classes is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Widget CSS Classes is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this plugin. If not, see http://www.gnu.org/licenses/.
- Upload the folder /widget-css-classes/ to the /wp-content/plugins/ directory
- Activate the plugin through the Plugins menu in WordPress
- Configure the settings under Settings > Widget CSS Classes
- Visit Appearance > Widgets to add or change the custom classes and ids for a widget.
- Expand the appropriate widget in the desired sidebar.
- You’ll see a field labeled CSS Class. Depending on your settings, this will be a text field and/or checkboxes.
- If you are using the text field you can enter multiple class names by separating them with a space.
- If you’ve enabled the id field, you will see a text field called CSS ID.
- Why aren’t the classes showing up in my widget?
You need to make sure you have an HTML element defined for
after_widgetin your active theme’s
usually located in your theme’s functions.php (/wp-content/themes/yourtheme/functions.php).
This HTML element must have class and id attributes. This plugin will not work if
‘name’ => ‘Sidebar’,
‘before_widget’ => ‘
‘after_widget’ => ‘
‘before_title’ => ‘
‘after_title’ => ‘
- How do I add the CSS for my custom class?
There are two ways:
Edit your theme’s style.css file (usually located in /wp-content/themes/yourtheme/).
Use a plugin such as Simple Custom CSS.
- How I export the Settings?
You can export the Settings from Settings > Widget CSS Classes > Import/Export.
- What should I do if I find a bug?
We use it for our new template and it made our template building process much easier.
Thank you, Cindy and her team!
Tried adding custom classes but it does not work, it does add widget-# and other classes, but not the one I enter. Needs some work.
This plugin provides functionality that is essential. Works great.
Works well when any div is added to register_sidebar’s before_widget and after_widget.
The ability to add a class to a widget should really be part of core, but until it is, this plugin does it flawlessly.
It’s very usefully … thanks
Contributors & Developers
“Widget CSS Classes” is open source software. The following people have contributed to this plugin.Contributors
- Feature: Sort Pre-defined classes (thanks Jory Hogeveen)
- Security: Prevent unauthenticated import of settings
- Fix: Notice message when classes is empty (thanks Jory Hogeveen)
- Feature: Change dropdown to checkboxes for multiple class selection
- Feature: Option to use both predefined and text input classes
- Feature: Migrate classes when predefined classes are available
- Improvement: Do not show previously defined classes that are removed in the settings page when a widget is not updated yet
- Fix: Only show stored classes if the field-type in the setting page is correct
- Fix: When predefined is selected, show previous text input classes if they are defined
- Fix: Ids index notice
- i18n: Added Dutch translation by Jory Hogeveen at Keraweb
- i18n: Added Russian translation by Наталия Завьялова
- i18n: Added Swedish translation by Olle Gustafsson
- Changed h2 to h1 on settings page
- Changed plus/minus icons on settings page to dashicons
- Added text domain to plugin header in preparation for automatic language translations
- Changed class and ID fields to full-width
- Added missing escaping from settings page
- Enqueue admin scripts on correct hook
- Fixed undefined notice when option was not found
- Fixed error notice
- Fixed notice
- Added Serbo-Croatian translation by Borisa Djuraskovic at WebHostingHub
- Added support for WP Page Widget
- Added Polish translation, Slovak translation files renamed by Tomasz Wesołowski
- Added Spanish translation by Maria Ramos at WebHostingHub
- Fix for notice on line 103 when using Widget Logic
- Tested with WordPress 3.7 beta 1
- Added Slovak translation by Branco WebHostingGeeks.com
- Updated Widget Context compatibility fix plus notice fix by Joan Piedra
- Changed jQuery live to on for 1.9 compatibility
- Replace ID with custom ID rather than appending to existing ID
- Added settings to not show numbered widget classes, first/last classes, and even/odd classes
- Added support for Widget Context plugin
- Fixed notices appearing when Widget Logic plugin was enabled but filter was disabled
- Added Hide option for the Class Field Type in Settings
- Don’t show any previously added IDs in front end if Show Additional Field for ID is set to No
- Don’t show any previously added classes in front end if Class Field Type is set to Hide
- First version