Include Meta Box Plugin In Themes
Though Meta Box actually is a plugin, but you can still use it in a theme without conflicts.
IMPORTANT NOTE:
Please, always test if a file exists, before including it.
if ( ! file_exists( $file ) )
wp_die( "The file at location {$file} doesn't exist. Check your pathes!" );
Include Meta Box Script version < 4.0
In previous versions of Meta Box Script (< 4.0), you can simply put the script files into theme folder and include 2 files:
include 'meta-box-3.2.2.php';
include 'meta-box-usage.php';
Include Meta Box Script version >= 4.0
Since version 4.0, the script has wrapped into a plugin, and thus the code above might not work properly. To include the Meta Box Script in a theme, please follow the guide below:
1. Download the script and put it in your theme folder
For example, if your theme name is 
sample-theme, then your folder structure after copying meta box script will look like:
sample-theme
- meta-box
- style.css
- index.php
- functions.php
- other files
You also can put the 
meta-box inside a sub-folder, such as inc or lib:
sample-theme
- inc/meta-box
- inc/custom
- style.css
- index.php
- other files
2. Redefine meta box script path and URL
Put the following code into your 
functions.php file:
// Re-define meta box path and URL
define( 'RWMB_URL', trailingslashit( get_stylesheet_directory_uri() . '/meta-box' ) );
define( 'RWMB_DIR', trailingslashit( STYLESHEETPATH . '/meta-box' ) );
// Include the meta box script
require_once RWMB_DIR . 'meta-box.php';
// Include the meta box definition (the file where you define meta boxes, see `demo/demo.php`)
include 'config-meta-boxes.php';
If you put meta box script inside a sub-folder (for ex. 
inc), then the code will look like:
// Re-define meta box path and URL
define( 'RWMB_URL', trailingslashit( get_stylesheet_directory_uri() . '/inc/meta-box' ) );
define( 'RWMB_DIR', trailingslashit( STYLESHEETPATH . '/inc/meta-box' ) );
// Include the meta box script
require_once RWMB_DIR . 'meta-box.php';
// Include the meta box definition (the file where you define meta boxes, see `demo/demo.php`)
include 'config-meta-boxes.php';
Note: If you want to use your theme as a parent theme (i.e. not a child theme), please change
STYLESHEETPATH above to TEMPLATEPATH.
This is the sample TwentyTwelve theme integrated with the Meta box plugin. Please download and play with it.
Nhận xét
Đăng nhận xét