OwlCyberSecurity - MANAGER
Edit File: rs-functions.php
<?php /** * Include and setup custom metaboxes and fields. (make sure you copy this file to outside the CMB2 directory) * * Be sure to replace all instances of 'rs_' with your project's prefix. * http://nacin.com/2010/05/11/in-wordpress-prefix-everything/ * * @category YourThemeOrPlugin * @package Demo_CMB2 * @license http://www.opensource.org/licenses/gpl-license.php GPL v2.0 (or later) * @link https://github.com/CMB2/CMB2 */ /** * Get the bootstrap! If using the plugin from wordpress.org, REMOVE THIS! */ if ( file_exists( dirname( __FILE__ ) . '/cmb2/init.php' ) ) { require_once dirname( __FILE__ ) . '/cmb2/init.php'; } elseif ( file_exists( dirname( __FILE__ ) . '/CMB2/init.php' ) ) { require_once dirname( __FILE__ ) . '/CMB2/init.php'; } /** * Conditionally displays a metabox when used as a callback in the 'show_on_cb' cmb2_box parameter * * @param CMB2 $cmb CMB2 object. * * @return bool True if metabox should show */ function rs_show_if_front_page( $cmb ) { // Don't show this metabox if it's not the front page template. if ( get_option( 'page_on_front' ) !== $cmb->object_id ) { return false; } return true; } /** * Conditionally displays a field when used as a callback in the 'show_on_cb' field parameter * * @param CMB2_Field $field Field object. * * @return bool True if metabox should show */ function rs_hide_if_no_cats( $field ) { // Don't show this field if not in the cats category. if ( ! has_tag( 'cats', $field->object_id ) ) { return false; } return true; } /** * Manually render a field. * * @param array $field_args Array of field arguments. * @param CMB2_Field $field The field object. */ function rs_render_row_cb( $field_args, $field ) { $classes = $field->row_classes(); $id = $field->args( 'id' ); $label = $field->args( 'name' ); $name = $field->args( '_name' ); $value = $field->escaped_value(); $description = $field->args( 'description' ); ?> <div class="custom-field-row <?php echo esc_attr( $classes ); ?>"> <p><label for="<?php echo esc_attr( $id ); ?>"><?php echo esc_html( $label ); ?></label></p> <p><input id="<?php echo esc_attr( $id ); ?>" type="text" name="<?php echo esc_attr( $name ); ?>" value="<?php echo $value; ?>"/></p> <p class="description"><?php echo esc_html( $description ); ?></p> </div> <?php } /** * Manually render a field column display. * * @param array $field_args Array of field arguments. * @param CMB2_Field $field The field object. */ function rs_display_text_small_column( $field_args, $field ) { ?> <div class="custom-column-display <?php echo esc_attr( $field->row_classes() ); ?>"> <p><?php echo $field->escaped_value(); ?></p> <p class="description"><?php echo esc_html( $field->args( 'description' ) ); ?></p> </div> <?php } /** * Conditionally displays a message if the $post_id is 2 * * @param array $field_args Array of field parameters. * @param CMB2_Field $field Field object. */ function rs_before_row_if_2( $field_args, $field ) { if ( 2 == $field->object_id ) { echo '<p>Testing <b>"before_row"</b> parameter (on $post_id 2)</p>'; } else { echo '<p>Testing <b>"before_row"</b> parameter (<b>NOT</b> on $post_id 2)</p>'; } } add_action( 'cmb2_admin_init', 'rs_register_gallery_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_register_gallery_metabox() { $prefix = 'rs_'; $cmb_project = new_cmb2_box( array( 'id' => $prefix . 'metabox-gallery', 'title' => esc_html__( 'Gallery Images', 'rs-framework' ), 'object_types' => array( 'gallery' ), // Post type // 'show_on_cb' => 'rs_show_if_front_page', // function should return a bool value // 'context' => 'normal', // 'priority' => 'high', // 'show_names' => true, // Show field names on the left // 'cmb_styles' => false, // false to disable the CMB stylesheet // 'closed' => true, // true to keep the metabox closed by default // 'classes' => 'extra-class', // Extra cmb2-wrap classes // 'classes_cb' => 'rs_add_some_classes', // Add classes through a callback. ) ); $cmb_project->add_field( array( 'name' => 'Upload Gallery Images', 'desc' => '', 'id' => 'Screenshot', 'type' => 'file_list', // 'preview_size' => array( 100, 100 ), // Default: array( 50, 50 ) // 'query_args' => array( 'type' => 'image' ), // Only images attachment // Optional, override default text strings 'text' => array( 'add_upload_files_text' => 'Upload Files', // default: "Add or Upload Files" 'remove_image_text' => 'Replacement', // default: "Remove Image" 'file_text' => 'Replacement', // default: "File:" 'file_download_text' => 'Replacement', // default: "Download" 'remove_text' => 'Replacement', // default: "Remove" ), ) ); } add_action( 'cmb2_admin_init', 'rs_register_header_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_register_header_metabox() { $prefix = 'rs_'; /** * Sample metabox to demonstrate each field type included */ $cmb_demo = new_cmb2_box( array( 'id' => $prefix . 'metabox', 'title' => esc_html__( 'Header Settings', 'rs-framework' ), 'object_types' => array( 'mp-event','page','post','teams','portfolios','services','product','archive' ), // Post type ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Custom Header Logo', 'cmb2' ), 'desc' => esc_html__( 'Select header logo', 'cmb2' ), 'id' => 'header_logo_img', 'type' => 'file', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Custom Sticky Logo', 'cmb2' ), 'desc' => esc_html__( 'Select Sticky logo', 'cmb2' ), 'id' => 'header_sticky_logo_img', 'type' => 'file', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Select Header Style', 'rs-framework' ), 'desc' => esc_html__( 'chosse your individual header style', 'rs-framework' ), 'id' => 'header_select', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'header1' => esc_html__( 'Header Style 1', 'rs-framework' ), 'header5' => esc_html__( 'Header Style 2', 'rs-framework' ), 'header8' => esc_html__( 'Header Style 3', 'rs-framework' ), 'header9' => esc_html__( 'Header Style 4', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Select Header Width', 'rs-framework' ), 'desc' => esc_html__( 'Choose your individual header width', 'rs-framework' ), 'id' => 'header_width_custom', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'container' => esc_html__( 'Container', 'rs-framework' ), 'full' => esc_html__( 'Container Fluid', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Logo Type', 'rs-framework' ), 'desc' => esc_html__( 'You can select logo type', 'rs-framework' ), 'id' => 'select-logo', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'light' => esc_html__( 'Light', 'rs-framework' ), 'dark' => esc_html__( 'Dark', 'rs-framework' ), 'icon' => esc_html__( 'Default Icon', 'rs-framework' ), 'icon2' => esc_html__( 'Light icon', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Topbar Area Background', 'rs-framework' ), 'desc' => esc_html__( 'chosse your background', 'rs-framework' ), 'id' => 'topbar-area-bg', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Topbar Text Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your color', 'rs-framework' ), 'id' => 'topbar-text-color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Topbar Link Hover Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your link color', 'rs-framework' ), 'id' => 'topbar_link_hovercolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Topbar Border Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your color', 'rs-framework' ), 'id' => 'topbar-border-color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Menu Area Background', 'rs-framework' ), 'desc' => esc_html__( 'chosse your background', 'rs-framework' ), 'id' => 'menu-type-bg', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Menu Area Border Color(only header style 3)', 'rs-framework' ), 'desc' => esc_html__( 'chosse your border color', 'rs-framework' ), 'id' => 'menu_border_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Main Menu Text Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your Text Color', 'rs-framework' ), 'id' => 'menu-text-color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Social Icon Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse icon Color', 'rs-framework' ), 'id' => 'social-icon-color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Main Menu Text Hover Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your Text Color', 'rs-framework' ), 'id' => 'menu-text-hover-color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Menu Bg Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your sticky bg color', 'rs-framework' ), 'id' => 'menu_sticky_bgcolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Main Menu Top Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(45px)', 'rs-framework' ), 'id' => 'main_menu_top', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Main Menu Bottom Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(45px)', 'rs-framework' ), 'id' => 'main_menu_bottom', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Menu Top Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(45px)', 'rs-framework' ), 'id' => 'sticky_main_menu_top', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Menu Bottom Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(45px)', 'rs-framework' ), 'id' => 'sticky_main_menu_bottom', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Menu Text Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your sticky text color', 'rs-framework' ), 'id' => 'menu_sticky_txtcolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Menu Hover Text Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your sticky hover text color', 'rs-framework' ), 'id' => 'menu_sticky_txt_hovercolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Dropdown Menu Background Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your Bg Color', 'rs-framework' ), 'id' => 'menu_bg_dropdowncolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Dropdown Menu Text Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your text color', 'rs-framework' ), 'id' => 'menu_text_dropdowncolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Dropdown Menu hover Text Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your hover text color', 'rs-framework' ), 'id' => 'menu_text_hover_dropdowncolor', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Header Top Margin', 'rs-framework' ), 'desc' => esc_html__( 'example(10px)', 'rs-framework' ), 'id' => 'header_menu_top', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Header Left Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(15px)', 'rs-framework' ), 'id' => 'left_header_menu', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Header Right Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(15px)', 'rs-framework' ), 'id' => 'right_header_menu', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Menu Type', 'rs-framework' ), 'desc' => esc_html__( 'You can select menu type', 'rs-framework' ), 'id' => 'menu-type', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'light' => esc_html__( 'Light', 'rs-framework' ), 'dark' => esc_html__( 'Dark', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Main Menu Center', 'rs-framework' ), 'desc' => esc_html__( 'Main menu center here', 'rs-framework' ), 'id' => 'center-menus', 'type' => 'select', 'show_option_none' => '', 'options' => array( 'no' => esc_html__( 'Default', 'rs-framework' ), 'yes' => esc_html__( 'Main Menu Center', 'rs-framework' ), 'left' => esc_html__( 'Main Menu Left', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Main menu Show or Hide (Desktop)', 'rs-framework' ), 'desc' => esc_html__( 'You Can Show or Hide Main menu', 'rs-framework' ), 'id' => 'menu-hides', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Mouse Pointer Style Show or Hide', 'rs-framework' ), 'desc' => esc_html__( 'You Can Show or Hide Pointer Style', 'rs-framework' ), 'id' => 'mouse-pointer', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Show Top Bar', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide topbar', 'rs-framework' ), 'id' => 'select-top', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Show Header Search', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide search', 'rs-framework' ), 'id' => 'select-search', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Search Icon Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Search Icon color', 'cmb2' ), 'id' => 'search_icon_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Cart Icon Show At Menu Area', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide cart icon', 'rs-framework' ), 'id' => 'show-cart-icon', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Cart Icon Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Cart Icon color', 'cmb2' ), 'id' => 'cart_icon_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Show off Canvas', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide off canvas', 'rs-framework' ), 'id' => 'show-off-canvas', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Show Quote Button', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide quote button', 'rs-framework' ), 'id' => 'show-quote', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Quote Button Text', 'rs-framework' ), 'desc' => esc_html__( 'Enter Quote Button Text', 'rs-framework' ), 'id' => 'quote_btn_text', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Hamburger Dots Primary Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Hamburger Dots color', 'cmb2' ), 'id' => 'head_hamburger_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Hamburger Dots Secondary Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Hamburger Dots color', 'cmb2' ), 'id' => 'head_hamburger_colors2', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Hamburger Dots Primary Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Sticky Hamburger Dots color', 'cmb2' ), 'id' => 'sticky_hamburgers_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Sticky Hamburger Dots Secondary Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Sticky Hamburger Dots color', 'cmb2' ), 'id' => 'sticky_hamburgers_secondary_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Quote Button Background Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Quote Button Background color', 'cmb2' ), 'id' => 'quote_button_bg_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Quote Button Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Quote Button color', 'cmb2' ), 'id' => 'quote_button_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Quote Button Hover Bg color', 'cmb2' ), 'desc' => esc_html__( 'Choose Quote Button Bg Border color', 'cmb2' ), 'id' => 'quote_button_bg_hover_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Quote Button Hover Color', 'cmb2' ), 'desc' => esc_html__( 'Choose Quote Button Hover color', 'cmb2' ), 'id' => 'quote_button_hover_color', 'type' => 'colorpicker', 'default' => '', ) ); } //page section metabox add_action( 'cmb2_admin_init', 'rs_register_header_banners_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_register_header_banners_metabox() { $prefix = 'rs_demo_'; /** * Sample metabox to demonstrate each field type included */ $cmb_demo = new_cmb2_box( array( 'id' => $prefix . 'metabox', 'title' => esc_html__( 'Banner Settings', 'rs-framework' ), 'object_types' => array( 'mp-event','page','post','teams','portfolios','services','product','archive' ), // Post type ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Select Banner Image', 'rs-framework' ), 'desc' => esc_html__( 'Upload an image or enter a URL for page banner.', 'rs-framework' ), 'id' => 'banner_image', 'type' => 'file', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Banner Hide', 'rs-framework' ), 'desc' => esc_html__( 'You Can Show or Hide Banner', 'rs-framework' ), 'id' => 'banner_hide', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Page Banner Text', 'rs-framework' ), 'desc' => esc_html__( 'Enter some text in banner', 'rs-framework' ), 'id' => 'content_banner', 'type' => 'textarea_small', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Show Page Title', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide page title', 'rs-framework' ), 'id' => 'select-title', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Show Breadcurmbs', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide breadcurmbs here', 'rs-framework' ), 'id' => 'select-bread', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'show' => esc_html__( 'Show', 'rs-framework' ), 'hide' => esc_html__( 'Hide', 'rs-framework' ), ), ) ); } //client metabox for adding link /**** Skill Meta ***/ add_action( 'cmb2_admin_init', 'trainers_register_repeatable_group_field_metabox' ); /** * Hook in and add a metabox to demonstrate repeatable grouped fields */ function trainers_register_repeatable_group_field_metabox() { $prefix = 'yourprefix_group_'; /** * Repeatable Field Groups */ $cmb_group = new_cmb2_box( array( 'id' => $prefix . 'metabox', 'title' => esc_html__( 'Team Member Skill', 'rs-function' ), 'object_types' => array( 'teams' ), 'priority' => 'low', // 'high', 'core', 'default' or 'low' ) ); // $group_field_id is the field id string, so in this case: $prefix . 'demo' $group_field_id = $cmb_group->add_field( array( 'id' => 'member_skill', 'type' => 'group', 'description' => esc_html__( 'Team Member Personal Skills', 'rs-function' ), 'options' => array( 'group_title' => esc_html__( 'Skill {#}', 'rs-function' ), // {#} gets replaced by row number 'add_button' => esc_html__( 'Add More Skill', 'rs-function' ), 'remove_button' => esc_html__( 'Remove Skill', 'rs-function' ), 'sortable' => true, // beta // 'closed' => true, // true to have the groups closed by default ), ) ); /** * Group fields works the same, except ids only need * to be unique to the group. Prefix is not needed. * * The parent field's id needs to be passed as the first argument. */ $cmb_group->add_group_field( $group_field_id, array( 'name' => esc_html__( 'Skill Title', 'rs-function' ), 'id' => 'skill_title', 'type' => 'text', // 'repeatable' => true, // Repeatable fields are supported w/in repeatable groups (for most types) ) ); $cmb_group->add_group_field( $group_field_id, array( 'name' => esc_html__( 'Skill Level', 'rs-function' ), 'id' => 'skill_level', 'type' => 'text', 'desc' => esc_html__( 'add skill level as like (35%) out 100%', 'rs-function' ), // 'repeatable' => true, // Repeatable fields are supported w/in repeatable groups (for most types) ) ); } //page section metabox add_action( 'cmb2_admin_init', 'rs_register_client_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_register_client_metabox() { $prefix = 'rs_demo_'; /** * Sample metabox to demonstrate each field type included */ $cmb_meta_page = new_cmb2_box( array( 'id' => $prefix . 'client', 'title' => esc_html__( 'Link Setting', 'rs-framework' ), 'object_types' => array( 'rsclient' ), // Post type // 'show_on_cb' => 'rs_show_if_front_page', // function should return a bool value // 'context' => 'normal', // 'priority' => 'high', // 'show_names' => true, // Show field names on the left // 'cmb_styles' => false, // false to disable the CMB stylesheet // 'closed' => true, // true to keep the metabox closed by default // 'classes' => 'extra-class', // Extra cmb2-wrap classes // 'classes_cb' => 'rs_add_some_classes', // Add classes through a callback. ) ); $cmb_meta_page->add_field( array( 'name' => esc_html__( 'Enter Logo Link here', 'rs-framework' ), 'desc' => esc_html__( 'http://rstheme.com', 'rs-framework' ), 'id' => 'client_link', 'type' => 'text_medium', ) ); } // Timeline Year add_action( 'cmb2_admin_init', 'rs_register_timeline_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_register_timeline_metabox() { $prefix = 'rs_demo_'; /** * Sample metabox to demonstrate each field type included */ $cmb_meta_page = new_cmb2_box( array( 'id' => $prefix . 'timeline', 'title' => esc_html__( 'Timeline Settings', 'rs-framework' ), 'object_types' => array( 'timelines' ), // Post type // 'show_on_cb' => 'rs_show_if_front_page', // function should return a bool value // 'context' => 'normal', // 'priority' => 'high', // 'show_names' => true, // Show field names on the left // 'cmb_styles' => false, // false to disable the CMB stylesheet // 'closed' => true, // true to keep the metabox closed by default // 'classes' => 'extra-class', // Extra cmb2-wrap classes // 'classes_cb' => 'rs_add_some_classes', // Add classes through a callback. ) ); $cmb_meta_page->add_field( array( 'name' => esc_html__( 'Enter Period of Time', 'rs-framework' ), 'desc' => esc_html__( 'Enter Period of Time i.e year of experience or year', 'rs-framework' ), 'id' => 'year', 'type' => 'text_medium', ) ); } //page section metabox add_action( 'cmb2_admin_init', 'rs_register_page_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_register_page_metabox() { $prefix = 'rs_demo_'; /** * Sample metabox to demonstrate each field type included */ $cmb_meta_page = new_cmb2_box( array( 'id' => $prefix . 'page', 'title' => esc_html__( 'Page Settings', 'rs-framework' ), 'object_types' => array( 'page', 'portfolios' ), // Post type // 'show_on_cb' => 'rs_show_if_front_page', // function should return a bool value // 'context' => 'normal', // 'priority' => 'high', // 'show_names' => true, // Show field names on the left // 'cmb_styles' => false, // false to disable the CMB stylesheet // 'closed' => true, // true to keep the metabox closed by default // 'classes' => 'extra-class', // Extra cmb2-wrap classes // 'classes_cb' => 'rs_add_some_classes', // Add classes through a callback. ) ); $cmb_meta_page->add_field( array( 'name' => esc_html__( 'Primary Color', 'rs-framework' ), 'desc' => esc_html__( 'chosse your background', 'rs-framework' ), 'id' => 'primary-colors', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_meta_page->add_field( array( 'name' => esc_html__( 'Select Page Background Image', 'rs-framework' ), 'desc' => esc_html__( 'Upload an image or enter a URL for page banner.', 'rs-framework' ), 'id' => 'page_bg', 'type' => 'file', ) ); $cmb_meta_page->add_field( array( 'name' => esc_html__( 'Content Top Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(100px)', 'rs-framework' ), 'default' => esc_attr__( '100px', 'rs-framework' ), 'id' => 'content_top', 'type' => 'text_medium', ) ); $cmb_meta_page->add_field( array( 'name' => esc_html__( 'Content Bottom Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(100px)', 'rs-framework' ), 'default' => esc_attr__( '100px', 'rs-framework' ), 'id' => 'content_bottom', 'type' => 'text_medium', ) ); } add_action( 'cmb2_admin_init', 'rs_register_footer_metabox' ); function rs_register_footer_metabox() { $prefix = 'rs_demo_'; /** * Sample metabox to demonstrate each field type included */ $cmb_demo = new_cmb2_box( array( 'id' => $prefix . 'footer', 'title' => esc_html__( 'Footer Settings', 'rs-function' ), 'object_types' => array( 'page' ), // Post type ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Top Padding', 'rs-framework' ), 'desc' => esc_html__( 'example(100px)', 'rs-framework' ), 'id' => 'footer__top__padding', 'type' => 'text_medium', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Hide Footer Subscribe', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide footer subscribe here', 'rs-framework' ), 'id' => 'hide_footer_subscribe', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'no' => esc_html__( 'No', 'rs-framework' ), 'yes' => esc_html__( 'Yes', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Hide Footer', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide footer here', 'rs-framework' ), 'id' => 'hide_footer', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'no' => esc_html__( 'No', 'rs-framework' ), 'yes' => esc_html__( 'Yes', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Hide Footer Widgets', 'rs-framework' ), 'desc' => esc_html__( 'You can show/hide footer widgets here', 'rs-framework' ), 'id' => 'hide_foot_widgets', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'no' => esc_html__( 'No', 'rs-framework' ), 'yes' => esc_html__( 'Yes', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Select Footer Width', 'rs-framework' ), 'desc' => esc_html__( 'Choose your individual header width', 'rs-framework' ), 'id' => 'header_width_custom2', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'container' => esc_html__( 'Container', 'rs-framework' ), 'full' => esc_html__( 'Container Fluid', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Background Image', 'cmb2' ), 'desc' => esc_html__( 'select footer background image', 'cmb2' ), 'id' => 'footer_bg_img', 'type' => 'file', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Background Position', 'rs-function' ), 'desc' => esc_html__( 'choose background position', 'rs-function' ), 'id' => 'footer_bg_position', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'center center' => esc_html__( 'Center Center', 'rs-function' ), 'center top' => esc_html__( 'Center Top', 'rs-function' ), 'center bottom' => esc_html__( 'Center Bottom', 'rs-function' ), 'left top' => esc_html__( 'Left Top', 'rs-function' ), 'left bottom' => esc_html__( 'Left Bottom', 'rs-function' ), 'right top' => esc_html__( 'Right Top', 'rs-function' ), 'right bottom' => esc_html__( 'Right Bottom', 'rs-function' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Background', 'cmb2' ), 'desc' => esc_html__( 'select footer background', 'cmb2' ), 'id' => 'footer_bg', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Logo', 'cmb2' ), 'desc' => esc_html__( 'Select footer logo', 'cmb2' ), 'id' => 'footer_logo_img', 'type' => 'file', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Top Border Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Top Border Color', 'cmb2' ), 'id' => 'footer_top_border_color', 'type' => 'colorpicker', 'default' => '', 'options' => array( 'alpha' => true ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Title Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Title Color', 'cmb2' ), 'id' => 'footer_title_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Text Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Text Color', 'cmb2' ), 'id' => 'footer_texts_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Link Text Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Link Text Color', 'cmb2' ), 'id' => 'footer_link_colorss', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Link Hover Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Link Hover Color', 'cmb2' ), 'id' => 'footer_primary_hover_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer input Border Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Border Color', 'cmb2' ), 'id' => 'footer_border_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer input Bg Color', 'cmb2' ), 'desc' => esc_html__( 'Footer input Bg Color', 'cmb2' ), 'id' => 'footer_in_bg_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer input Button Icon Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Button Icon Color', 'cmb2' ), 'id' => 'footer_in_icon_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Icon Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Icon Color', 'cmb2' ), 'id' => 'footer_all_icon_colors', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Social Icon Bg Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Social Icon Bg Color', 'cmb2' ), 'id' => 'footer_socials_bg_colors', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Social Icon Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Social Icon Color', 'cmb2' ), 'id' => 'footer_socials_icon_colors', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Button Bg Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Button Bg Color', 'cmb2' ), 'id' => 'footer_btn_bg_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Footer Button Text Color', 'cmb2' ), 'desc' => esc_html__( 'Footer Button Text Color', 'cmb2' ), 'id' => 'footer_btn_text_color', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Copyright Background Transparent', 'rs-framework' ), 'desc' => esc_html__( 'Choose copyright background Transparent', 'rs-framework' ), 'id' => 'copyright_trans', 'type' => 'select', 'show_option_none' => 'Default', 'options' => array( 'no' => esc_html__( 'No', 'rs-framework' ), 'yes' => esc_html__( 'Yes', 'rs-framework' ), ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Copyright Background', 'cmb2' ), 'desc' => esc_html__( 'select copyright background', 'cmb2' ), 'id' => 'copyright_bg', 'type' => 'colorpicker', 'default' => '', ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Copyright Border Color', 'cmb2' ), 'desc' => esc_html__( 'select border color', 'cmb2' ), 'id' => 'copyright_border', 'type' => 'colorpicker', 'default' => '', 'options' => array( 'alpha' => true ), ) ); $cmb_demo->add_field( array( 'name' => esc_html__( 'Copyright Padding', 'cmb2' ), 'desc' => esc_html__( 'example(10px 5px)', 'rs-framework' ), 'id' => 'copyright_padding', 'type' => 'text_medium', 'default' => esc_attr__( '0px', 'rs-framework' ), ) ); } add_action( 'cmb2_admin_init', 'rs_service_project_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_service_project_metabox() { $prefix = 'rs_'; $cmb_project = new_cmb2_box( array( 'id' => $prefix . 'metabox-service', 'title' => esc_html__( 'Service Thumb Image', 'brickx' ), 'object_types' => array( 'services' ), // Post type ) ); $cmb_project->add_field( array( 'name' => 'Upload Thumb Image', 'desc' => '', 'id' => 'service-thumb', 'type' => 'file', ) ); $cmb_project->add_field( array( 'name' => 'Upload Hover Thumb Image', 'desc' => '', 'id' => 'service-thumb-hover', 'type' => 'file', ) ); } //department post type metabox add_action( 'cmb2_admin_init', 'rs_department_project_metabox' ); /** * Hook in and add a demo metabox. Can only happen on the 'cmb2_admin_init' or 'cmb2_init' hook. */ function rs_department_project_metabox() { $prefix = 'rs_'; $cmb_project = new_cmb2_box( array( 'id' => $prefix . 'icon-department', 'title' => esc_html__( 'Department Section', 'brickx' ), 'object_types' => array( 'mp-event' ), // Post type ) ); $cmb_project->add_field( array( 'name' => 'Upload department icon', 'desc' => '', 'id' => 'icon-thumb', 'type' => 'file', ) ); $cmb_project->add_field( array( 'name' => esc_html__( 'Department Except', 'rs-framework' ), 'desc' => esc_html__( 'Enter some text', 'rs-framework' ), 'id' => 'content_dept', 'type' => 'textarea_small', ) ); } /** * Callback to define the optionss-saved message. * * @param CMB2 $cmb The CMB2 object. * @param array $args { * An array of message arguments * * @type bool $is_options_page Whether current page is this options page. * @type bool $should_notify Whether options were saved and we should be notified. * @type bool $is_updated Whether options were updated with save (or stayed the same). * @type string $setting For add_settings_error(), Slug title of the setting to which * this error applies. * @type string $code For add_settings_error(), Slug-name to identify the error. * Used as part of 'id' attribute in HTML output. * @type string $message For add_settings_error(), The formatted message text to display * to the user (will be shown inside styled `<div>` and `<p>` tags). * Will be 'Settings updated.' if $is_updated is true, else 'Nothing to update.' * @type string $type For add_settings_error(), Message type, controls HTML class. * Accepts 'error', 'updated', '', 'notice-warning', etc. * Will be 'updated' if $is_updated is true, else 'notice-warning'. * } */ function rs_options_page_message_callback( $cmb, $args ) { if ( ! empty( $args['should_notify'] ) ) { if ( $args['is_updated'] ) { // Modify the updated message. $args['message'] = sprintf( esc_html__( '%s — Updated!', 'rs-framework' ), $cmb->prop( 'title' ) ); } add_settings_error( $args['setting'], $args['code'], $args['message'], $args['type'] ); } } /** * Only show this box in the CMB2 REST API if the user is logged in. * * @param bool $is_allowed Whether this box and its fields are allowed to be viewed. * @param CMB2_REST_Controller $cmb_controller The controller object. * CMB2 object available via `$cmb_controller->rest_box->cmb`. * * @return bool Whether this box and its fields are allowed to be viewed. */ function rs_limit_rest_view_to_logged_in_users( $is_allowed, $cmb_controller ) { if ( ! is_user_logged_in() ) { $is_allowed = false; } return $is_allowed; }