Skip to content
forked from CMB2/CMB2

CMB2 is a metabox, custom fields, and forms library for WordPress that will blow your mind.

Notifications You must be signed in to change notification settings

torbentschechne/CMB2

 
 

Repository files navigation

CMB2

Gitter Wordpress plugin Wordpress Wordpress rating Travis Scrutinizer Code Quality Scrutinizer Coverage Project Stats

Contributors: webdevstudios, jtsternberg, gregrickaby, tw2113, patrickgarman
Donate link: http://webdevstudios.com
Tags: metaboxes, forms, fields, options, settings
Requires at least: 3.8.0
Tested up to: 4.1.0
Stable tag: 2.0.3
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Complete contributors list found here: github.com/WebDevStudios/CMB2/graphs/contributors

Description

CMB2 is a metabox, custom fields, and forms library for WordPress that will blow your mind.

Plugin available on wordpress.org

CMB2 is a complete rewrite of Custom Metaboxes and Fields for WordPress. To get started, please follow the examples in the included example-functions.php file and have a look at the basic usage instructions.

You can see a list of available field types here.

Features:

Translation

3rd Party Resources

Custom Field Types

Other Helpful Resources

  • Taxonomy_MetaData: WordPress Helper Class for saving pseudo-metadata for taxonomy terms. Includes an extended class for using CMB to generate the actual form fields.
  • WordPress Shortcode Button: Uses CMB2 fields to generate fields for shortcode input modals.

Contribution

All contributions welcome. If you would like to submit a pull request, please check out the trunk branch and pull request against it. Please read the CONTRIBUTING doc for more details.

A complete list of all our awesome contributors found here: github.com/WebDevStudios/CMB2/graphs/contributors

Links

Installation

If installing the plugin from wordpress.org:

  1. Upload the entire /CMB2 directory to the /wp-content/plugins/ directory.
  2. Activate CMB2 through the 'Plugins' menu in WordPress.
  3. Copy (and rename if desired) example-functions.php into to your theme or plugin's directory.
  4. Edit to only include the fields you need and rename the functions.
  5. Profit.

If including the library in your plugin or theme:

  1. Place the CMB2 directory inside of your theme or plugin.
  2. Copy (and rename if desired) example-functions.php into a folder above the CMB2 directory OR copy the entirety of its contents to your theme's functions.php file.
  3. Edit to only include the fields you need and rename the functions (CMB2 directory should be left unedited in order to easily update the library).
  4. Profit.

2.0.3

Enhancements

  • New constant, CMB2_DIR, which stores the file-path to the CMB2 directory.
  • text_date, text_time, text_date_timestamp, text_datetime_timestamp, and text_datetime_timestamp_timezone field types now take an arguments array so they can be extended by custom field types.
  • Removed auto-scroll when adding groups. To re-add the feature, use the snippet/plugin here. (#205)
  • Updated Timepicker utilizing the @trentrichardson jQuery Timepicker add-on (https://github.com/trentrichardson/jQuery-Timepicker-Addon), and updated Datepicker styles. Props JonMasterson. (#204, #206, #45).
  • Added a callback option for the field default value. The callback gets passed an array of all the field parameters as the first argument, and the field object as the second argument. (which means you can get the post id using $field->object_id). (#233).
  • New CMB2::get_field() method and cmb2_get_field helper function for retrieving a CMB2_Field object from the array of registered fields for a metabox.
  • New CMB2::get_sanitized_values() method and cmb2_get_metabox_sanitized_values helper function for retrieving sanitized values from an array of values (usually $_POST data).
  • New 'save_fields' metabox property that can be used to disable (by setting 'save_fields' => false) the automatic saving of the fields when the form is submitted. These can be useful when you want to handle the saving of the fields yourself, or want to use submitted data for other purposes like generating new posts, or sending emails, etc.

Bug Fixes

  • Fix commented out text_datetime_timestamp_timezone field registration example in example-functions.php. Props cliffordp, (#203).
  • Fix sidebar styling for money fields and fields with textareas. (#234)
  • Fix CMB2_Sanitize class to properly use the stripslashed value (which was added in #162 but never used). Props dustyf, (#241).

View complete changelog

Known Issues

  • The CMB2 url (for css/js resources) does not define properly in all WAMP/XAMP (Windows) environments.
  • Metabox containing WYSIWYG editor cannot be moved or used in a repeatable way at this time (this is a TinyMCE issue).
  • Not all fields work well in a repeatable group.

About

CMB2 is a metabox, custom fields, and forms library for WordPress that will blow your mind.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 54.1%
  • CSS 37.5%
  • JavaScript 7.8%
  • Shell 0.6%