Skip to content

Custom Metaboxes and Fields (CMB) will create metaboxes and forms with custom fields that will blow your mind. This is version 2.0 and has been completely rewritten.

coreymcollins/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.2
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.2

Enhancements

  • Use the more appropriate add_meta_boxes hook for hooking in metaboxes to post-edit screen. Thanks @inspiraaz for reporting. (#161)
  • Add a row_classes field param which allows you to add additional classes to the cmb-row wrap. This parameter can take a string, or array, or can take a callback that returns a string or array. The callback will receive $field_args as the first argument, and the CMB2_Field $field object as the second argument. Reported/requested in #68.
  • New constant, CMB2_LOADED, which you can use to check if CMB2 is loaded for your plugins/themes with CMB2 dependency.
  • New hooks, cmb2_init_before_hookup and cmb2_after_init.
  • New API for adding metaboxes and fields, demonstrated in example-functions.php. In keeping with backwards-compatibility, the cmb2_meta_boxes filter method will still work, but is not recommended. New API includes new_cmb2_box helper function to generate a new metabox, and returns a $cmb object to add new fields (via the CMB2::add_field() and CMB2::add_group_field() methods).
  • New CMB2 method, CMB2::remove_field().
  • New CMB2_Boxes method, CMB2_Boxes::remove().
  • When clicking on a file/image in the file, or file_list type, the media modal will open with that image selected. Props johnsonpaul1014, (#120).

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

Custom Metaboxes and Fields (CMB) will create metaboxes and forms with custom fields that will blow your mind. This is version 2.0 and has been completely rewritten.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 62.1%
  • CSS 27.7%
  • JavaScript 9.5%
  • Shell 0.7%