Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/knitkode/customize-plus

Enhance and extend the WordPress Customizer
https://github.com/knitkode/customize-plus

customizer wordpress wordpress-customizer wordpress-development wordpress-plugin wordpress-theme-development wordpress-theme-options

Last synced: 2 months ago
JSON representation

Enhance and extend the WordPress Customizer

Awesome Lists containing this project

README

        

# Customize Plus

Enhance and extend the WordPress Customize in your themes.

**Contributors:** [knitkode](https://profiles.wordpress.org/knitkode), [kuus](https://profiles.wordpress.org/kuus)
**Tags:** [wordpress](https://wordpress.org/plugins/tags/wordpress), [customizer](https://wordpress.org/plugins/tags/customizer), [options framework](https://wordpress.org/plugins/tags/options-framework), [theme](https://wordpress.org/plugins/tags/theme)
**Requires at least:** 4.9.4
**Tested up to:** 4.9.4
**Stable tag:** 1.1.1
**License:** [GPLv3+](http://www.gnu.org/licenses/gpl-3.0.html)
**Requires PHP:** 5.2.4
**Donate link:** https://liberapay.com/knitkode/donate

## Description ##

[![WordPress plugin](https://img.shields.io/wordpress/plugin/v/customize-plus.svg)](https://wordpress.org/plugins/customize-plus)
[![GitHub release](https://img.shields.io/github/release/knitkode/customize-plus.svg)](https://github.com/knitkode/customize-plus/releases/latest)
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/facc393563dd4ef49ff3b2dea2bd2f7c)](https://www.codacy.com/app/knitkode/customize-plus?utm_source=customize-plus&utm_medium=github&utm_content=badge_codacy&utm_campaign=readme)

Customize Plus brings powerful custom controls fully integrated in the WordPress Customize. The code, the admin UI and the API totally looks like WordPress, as it should be. Customize Plus extends the WordPress API to create all the controls you need leveraging the JavaScript API. All the `theme_mods` or `options` managed by Customize Plus controls are automatically validated and sanitized. You do not even need to define the fallback value when retrieving them. End users will also benefit from this plugin, for instance they will be able to separately reset the control values of each control to the initial session or factory value. This and many other features are extended in [Customize Plus Premium](https://knitkode.com/products/customize-plus-premium/) enriching the Customize experience not only for developers but also for users. Developers will also find useful the plugin [Customize Plus Builder](https://knitkode.com/products/customize-plus-builder/) to further improve their development experience.
### Links ###
* [Project page](https://knitkode.com/products/customize-plus)
* [Documentation](https://knitkode.com/docs/customize-plus)
* [Development](https://github.com/knitkode/customize-plus/tree/develop) and [issues](https://github.com/knitkode/customize-plus/issues) on [github](https://github.com/knitkode/customize-plus)
* [Demo](https://github.com/knitkode/customize-plus-demo)

### What does this plugin do? ###
Improve the WordPress Customize experience both for theme developers and their users. Note that themes' end users will not have any benefit without a theme that actively implements Customize Plus.

### Who is this Plugin ideal for? ###
Anyone interested in using the WordPress Customize interface. Especially theme developers who want to build rich Customize experiences for their users.

### Can I see a quick demo? ###
Yes, try out the always up to date [official demo theme](https://github.com/knitkode/customize-plus-demo).

### Features ###
* State of the art automatic sanitization and validation (both server and frontend side)
* Controls can be reset individually
* Automatic default value when retrieving settings via `get_theme_mod` or `get_option`
* Controls are lightweight and responsive
* Controls are rendered on demand (*experimental opt-in*)
* Markdown supported in control's titles and descriptions
* Optional help text in tooltips (on each input choice for choice based controls)
* UI seamlessy fits into WordPress
* Code is clean and extendable via `kkcp` API
* Custom controls implemented
1. **text / email / url / tel / password**
2. **textarea** / **wp_editor**
3. **number**
4. **toggle** / **switch** / **checkbox**
5. **radio** / **radio image** / **buttonset**
6. **multicheck** / **sortable multicheck**
7. **slider**
8. **color** / **alpha** / **palette** / **transparent**
9. **font family** / **font weight**
10. **select** / **dropdown** / **multiselect** / **sortable multiselect**
11. **sortable**
12. **tags / sortable tags**
13. **icons** / **dashicons**
14. **content** / **markdown** / **alert**
15. **WordPress native controls***
16. **dynamic color** *(Premium)*
17. **dynamic size** *(Premium)*
18. **datepicker** *(Premium)*
19. **knob** *(Premium)*
* **COMING SOON**: take a look at the [roadmap here](https://knitkode.com/roadmap#customize-plus?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=coming_soon&utm_campaign=readme)

## Installation ##

### Installation ###
Just install this plugin and activate it in the standard way. If you have never done it:
1. From your WordPress Admin Dashboard go to: Plugins > Add New
2. Search for "Customize Plus"
3. Locate the "Customize Plus" plugin by KnitKode and click the Install Now button.
4. Activate the plugin labeled "Customize Plus".
5. For detailed setup instructions, vist the official [documentation](https://knitkode.com/docs/customize-plus?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=installation_tab&utm_campaign=readme) page.

Unzip all files to the /wp-content/plugins/loco-translate directory
Log into WordPress admin and activate the ‘Loco Translate’ plugin through the ‘Plugins’ menu
Go to Loco Translate > Home in the left-hand menu to start translating

### Theme integration ###
Checkout the [documentation here](https://knitkode.com/docs/customize-plus/getting-started/integration?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=theme_integration&utm_campaign=readme). A tool to facilitate this task is [Customize Plus Builder](https://knitkode.com/products/customize-plus-builder?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=theme_integration&utm_campaign=readme), you can [try it here](https://knitkode.com/customize-plus-builder?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=theme_integration&utm_campaign=readme).

### Translations ###
* English - default
* Contributions are welcome

*Note:* This plugin is localized and translation ready. You can help translating this project into [different languages here](https://translate.wordpress.org/projects/wp-plugins/customize-plus).

## Frequently Asked Questions ##

### Where can I find complete documentation? ###
Documentation can be found at [knitkode.com/docs/customize-plus](https://knitkode.com/docs/customize-plus?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=faq&utm_campaign=readme)

### How do I get help? ###
Help is provided via the plugin support forum only. Please visit the [support page](https://knitkode.com/support?utm_source=customize-plus&utm_medium=wordpress_org&utm_content=faq&utm_campaign=readme) to see other options.

### Can I see a quick demo? ###
Yes, try out the always up to date [official demo theme](https://github.com/knitkode/customize-plus-demo).

## Changelog ##

### 1.1.1: 24/02/2017 ###
* Bugfixing
* Moved control templates to JavaScript control's classes
* Control's classes use now a React ready methods naming and lifecycle style
* Support warnings in $validity notifications

### 1.0.21: 22/02/2017 ###
* Fix 'dancing char' on Base Input Control

### 1.0.21: 22/02/2017 ###
* Fix radio image control missing label->input link

### 1.0.2: 22/02/2017 ###
* Basic fixes to controls behaviour

### 1.0.0: 21/02/2017 ###
* First official plugin release

### 0.0.9: December 2017 ###
* First plugin release

## Upgrade Notice ##

### 1.0.0 ###
Just released into the wild

## Credits ##

Unless otherwise specified, all the plugin files are licensed under GNU General Public License version 3, see file license.txt. The exceptions to this license are as follows*:

* [Modernizr](https://github.com/Modernizr/Modernizr/) by Faruk Ates, Paul Irish, Alex Sexton, Ryan Seddon, Patrick Kettner, Stu Cox, Richard Herrera is licensed under the [MIT License](https://opensource.org/licenses/MIT)
* [classList.js](https://github.com/eligrey/classList.js/) by [Eli Grey](https://eligrey.com/) is [dedicated to the public domain](https://github.com/eligrey/classList.js/blob/master/LICENSE.md)
* [css-toggle-switch](https://github.com/ghinda/css-toggle-switch) by [Ionuț Colceriu](https://ghinda.net/) is licensed under the [MIT license](https://github.com/ghinda/css-toggle-switch/blob/master/LICENSE)
* [jQuery-ui-Slider-Pips](https://github.com/simeydotme/jQuery-ui-Slider-Pips) by [Simon Goellner](http://simey.me) is licensed under the [MIT License](http://opensource.org/licenses/MIT)
* [locutus](https://github.com/kvz/locutus) by [Kevin van Zonneveld](http://kvz.io) and [Contributors](http://locutus.io/authors) is license under the [MIT license](https://github.com/kvz/locutus/blob/master/LICENSE)
* [marked.js](https://github.com/chjj/marked) by [Christopher Jeffrey](https://github.com/chjj/) is licensed under the [MIT License](https://github.com/chjj/marked/blob/master/LICENSE)
* [selectize.js](https://github.com/selectize/selectize.js/) by [Brian Reavis](http://thirdroute.com/) is licensed under [Apache v2.0](https://github.com/selectize/selectize.js/blob/master/LICENSE)
* [spectrum](https://github.com/bgrins/spectrum/) by [Brian Grinstead](http://briangrinstead.com) is licensed under the [MIT License](https://github.com/bgrins/spectrum/blob/master/LICENSE)
* [validator.js](https://github.com/chriso/validator.js) by [Chris O'Hara](https://github.com/chriso) is licensed under the [MIT License](https://github.com/chriso/validator.js/blob/master/LICENSE)

*All plugins included in Customize Plus adopt a GPL-compatible license as required by the WordPress.org [plugins guidelines](https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/#the-guidelines)