Advertisement
Guest User

Untitled

a guest
Jan 24th, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 7.12 KB | None | 0 0
  1. function mytheme_register_meta_boxes( $meta_boxes ){
  2.     $prefix = 'mytheme_';
  3.  
  4.     // Page builder
  5.     $meta_boxes[] = array(
  6.         'id'       => $prefix . 'page-builder',
  7.         'title'    => esc_html__( 'Page Builder', 'mytheme' ),
  8.         'pages'    => array( 'page' ),
  9.         'context'  => 'normal',
  10.         'priority' => 'high',
  11.         'show'     => array(
  12.             'template'    => array( 'page-builder.php' ),
  13.         ),
  14.  
  15.         'fields' => array(
  16.             array(
  17.                 'id'            => $prefix . 'pb-section',
  18.                 'type'          => 'group',
  19.                 'collapsible'   => true,
  20.                 'clone'         => true,
  21.                 'max_clone'     => 100,
  22.                 'group_title'   => array(
  23.                     'field'     => $prefix . 'pb-section-select',
  24.                 ),
  25.                 'sort_clone'    => true,
  26.                 'save_state'    => true,
  27.                 // List of sub-fields
  28.                 'fields' => array(
  29.                     array(
  30.                         'name'          => esc_html__('Section', 'mytheme'),
  31.                         'id'            => $prefix . 'pb-section-select',
  32.                         'type'          => 'select',
  33.                         'placeholder'   => esc_html__( 'Select a section', 'mytheme' ),
  34.                         'options'       => array(
  35.                             'ft-slider' => esc_html__( 'Featured Slider', 'mytheme' ),
  36.                             'with-sidebar' => esc_html__( 'With Sidebar Section', 'mytheme' ),
  37.                         ),
  38.                     ),
  39.                     // #Featured Slider fields.
  40.                     array(
  41.                         'id'            => $prefix . 'pb-ft-slider-configs',
  42.                         'type'          => 'group',
  43.                         'group_title'   => false,
  44.                         'visible'       => array( $prefix . 'pb-section-select', '=', 'ft-slider' ),
  45.                         // List of sub-fields
  46.                         'fields' => array(
  47.                             array(
  48.                                 'id'       => $prefix . 'pb-ft-slider-post-source',
  49.                                 'name'     => esc_html__( 'Posts Source', 'mytheme' ),
  50.                                 'type'     => 'button_group',
  51.                                 'options'  => array(
  52.                                     'latest'        => esc_html__( 'Latest', 'mytheme' ),
  53.                                     'by-cats'       => esc_html__( 'By categories', 'mytheme' ),
  54.                                     'by-tags'       => esc_html__( 'By tags', 'mytheme' ),
  55.                                     'manually'      => esc_html__( 'Select manually', 'mytheme' ),
  56.                                 ),
  57.                                 'inline'   => true,
  58.                                 'std'      => 'latest',
  59.                             ),
  60.                             array(
  61.                                 'id'            => $prefix . 'pb-ft-slider-cats',
  62.                                 'name'          => esc_html__( 'Categories Select', 'mytheme' ),
  63.                                 'placeholder'   => esc_html__( 'Select categories', 'mytheme' ),
  64.                                 'type'          => 'taxonomy',
  65.                                 'taxonomy'      => 'category',
  66.                                 'field_type'    => 'select_advanced',
  67.                                 'multiple'      => true,
  68.                                 'query_args'    => array(
  69.                                     'hide_empty'    => true,
  70.                                 ),
  71.                                 'visible'       => array( $prefix . 'pb-ft-slider-post-source', '=', 'by-cats' ),
  72.                             ),
  73.                             array(
  74.                                 'id'            => $prefix . 'pb-ft-slider-tags',
  75.                                 'name'          => esc_html__( 'Tags Select', 'mytheme' ),
  76.                                 'placeholder'   => esc_html__( 'Select tags', 'mytheme' ),
  77.                                 'type'          => 'taxonomy',
  78.                                 'taxonomy'      => 'post_tag',
  79.                                 'field_type'    => 'select_advanced',
  80.                                 'multiple'      => true,
  81.                                 'query_args'    => array(
  82.                                     'hide_empty'    => true,
  83.                                 ),
  84.                                 'visible'       => array( $prefix . 'pb-ft-slider-post-source', '=', 'by-tags' ),
  85.                             ),
  86.                             array(
  87.                                 'id'            => $prefix . 'pb-ft-slider-posts',
  88.                                 'name'          => esc_html__( 'Posts Select', 'mytheme' ),
  89.                                 'placeholder'   => esc_html__( 'Select posts', 'mytheme' ),
  90.                                 'type'          => 'post',
  91.                                 'post_type'     => 'post',
  92.                                 'field_type'    => 'select_advanced',
  93.                                 'multiple'      => true,
  94.                                 'query_args'    => array(
  95.                                     'post_status'    => 'publish',
  96.                                     'posts_per_page' => 100,
  97.                                 ),
  98.                                 'visible'       => array( $prefix . 'pb-ft-slider-post-source', '=', 'manually' ),
  99.                             ),
  100.                         ),
  101.                     ),
  102.                     // #Content with sidebar section.
  103.                     array(
  104.                         'id'            => $prefix . 'pb-section-main-col',
  105.                         'type'          => 'group',
  106.                         'collapsible'   => true,
  107.                         'clone'         => true,
  108.                         'max_clone'     => 100,
  109.                         'group_title'   => array(
  110.                             'field'     => 'section-main-col-select',
  111.                         ),
  112.                         'sort_clone'    => true,
  113.                         'save_state'    => true,
  114.                         'visible'       => array( 'section-select', '=', 'with-sidebar' ),
  115.                         // List of sub-fields
  116.                         'fields' => array(
  117.                             array(
  118.                                 'name'          => esc_html__('Section', 'mytheme'),
  119.                                 'id'            => 'section-main-col-select',
  120.                                 'type'          => 'select',
  121.                                 'placeholder'   => esc_html__( 'Select a layout', 'mytheme' ),
  122.                                 'options'       => array(
  123.                                     'posts-listing' => esc_html__( 'Posts Listing', 'mytheme' ),
  124.                                     'slider' => esc_html__( 'Slider', 'mytheme' ),
  125.                                 ),
  126.                             ),
  127.                         ),
  128.                     ),
  129.                 ),
  130.             ),
  131.         ),
  132.     );
  133.  
  134.     return $meta_boxes;
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement