// Create post type options for archives section on theme options page function acf_load_post_type_groups( $field ) { $checked_post_types = get_checked_post_types(); $field['sub_fields'] = array(); $array = array( 'key' => 'field_post', 'label' => 'Regular Posts (WP Core)', 'name' => 'posts', 'type' => 'group', 'sub_fields' => array( array( 'key' => 'sub_field_hf8d7fhr62tr', 'label' => 'Layout', 'name' => 'layout_post', 'type' => 'radio', 'instructions' => '', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => '', 'id' => '', ), 'choices' => array( 'left_sidebar' => 'Left sidebar', 'right_sidebar' => 'Right sidebar', 'no_sidebar' => 'No sidebar (full-width)', ), 'allow_null' => 0, 'other_choice' => 0, 'default_value' => 'right_sidebar', 'layout' => 'vertical', 'return_format' => 'value', 'save_other_choice' => 0, ), array( 'key' => 'sub_field_oh5g342uyt79hf', 'label' => 'Appearance', 'name' => 'appearance_post', 'type' => 'select', 'instructions' => 'Choose how archive lists should appear, as a vertical list or a card grid.', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => 'input-10', 'id' => '', ), 'choices' => array( 'list' => 'Vertical List', 'grid' => 'Card Grid', ), 'default_value' => 'list', 'allow_null' => 0, 'multiple' => 0, 'ui' => 0, 'return_format' => 'value', 'ajax' => 0, 'placeholder' => '', ), array( 'key' => 'sub_field_jdud8d746lh0jhf', 'label' => 'Metadata', 'name' => 'metadata_post', 'type' => 'group', 'instructions' => 'Show tags and/or categories on archive pages and/or single posts.', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => 'input-10', 'id' => '', ), 'layout' => 'block', 'acfe_seamless_style' => 1, 'acfe_group_modal' => 0, 'sub_fields' => array( array( 'key' => 'sub_field_hff8f7k5kk0n2', 'label' => '', 'name' => '', 'type' => 'checkbox', 'instructions' => '', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => '', 'id' => '', ), 'choices' => array( 'tags' => 'Tags', 'categories' => 'Categories', 'archives' => 'On archive pages', 'single' => 'On single posts', 'labels' => 'Text labels', 'icons' => 'Icons', ), 'allow_custom' => 0, 'default_value' => array( ), 'layout' => 'vertical', 'toggle' => 0, 'return_format' => 'value', 'save_custom' => 0, ), ), ), array( 'key' => 'sub_field_kg9s44se2hhh7', 'label' => 'Excerpts', 'name' => 'excerpt_length_post', 'type' => 'number', 'instructions' => 'Enter the length of excerpts (in number of characters).', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => 'input-8', 'id' => '', ), 'default_value' => 180, 'placeholder' => '', 'prepend' => '', 'append' => '', 'min' => '', 'max' => '', 'step' => '', ), ), ); $field['sub_fields'][] = $array; foreach($checked_post_types as $checked_post_type) { $array = array( 'key' => 'field_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'label' => ucwords(str_replace('_', ' ', $checked_post_type)), 'name' => $checked_post_type, 'type' => 'group', 'sub_fields' => array( array( 'key' => 'field_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'label' => 'Layout', 'name' => 'layout_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'type' => 'radio', 'instructions' => '', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => '', 'id' => '', ), 'choices' => array( 'left_sidebar' => 'Left sidebar', 'right_sidebar' => 'Right sidebar', 'no_sidebar' => 'No sidebar (full-width)', ), 'allow_null' => 0, 'other_choice' => 0, 'default_value' => 'right_sidebar', 'layout' => 'vertical', 'return_format' => 'value', 'save_other_choice' => 0, ), array( 'key' => 'field_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'label' => 'Appearance', 'name' => 'appearance_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'type' => 'select', 'instructions' => 'Choose how archive lists should appear, as a vertical list or a card grid.', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => 'input-10', 'id' => '', ), 'choices' => array( 'list' => 'Vertical List', 'grid' => 'Card Grid', ), 'default_value' => 'list', 'allow_null' => 0, 'multiple' => 0, 'ui' => 0, 'return_format' => 'value', 'ajax' => 0, 'placeholder' => '', ), array( 'key' => 'field_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'label' => 'Metadata', 'name' => 'metadata_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'type' => 'group', 'instructions' => 'Show tags and/or categories on archive pages and/or single posts.', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => 'input-10', 'id' => '', ), 'layout' => 'block', 'acfe_seamless_style' => 1, 'acfe_group_modal' => 0, 'sub_fields' => array( array( 'key' => 'field_metadata_choices_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'label' => '', 'name' => 'metadata_choices_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'type' => 'checkbox', 'instructions' => '', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => '', 'id' => '', ), 'choices' => array( 'tags' => 'Tags', 'categories' => 'Categories', 'archives' => 'On archive pages', 'single' => 'On single posts', 'labels' => 'Text labels', 'icons' => 'Icons', ), 'allow_custom' => 0, 'default_value' => array( ), 'layout' => 'vertical', 'toggle' => 0, 'return_format' => 'value', 'save_custom' => 0, ), ), ), array( 'key' => 'field_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'label' => 'Excerpts', 'name' => 'excerpt_length_' . strtolower(str_replace(' ', '-', $checked_post_type)), 'type' => 'number', 'instructions' => 'Enter the length of excerpts (in number of characters).', 'required' => 0, 'conditional_logic' => 0, 'wrapper' => array( 'width' => '', 'class' => 'input-8', 'id' => '', ), 'default_value' => 180, 'placeholder' => '', 'prepend' => '', 'append' => '', 'min' => '', 'max' => '', 'step' => '', ), ), ); $field['sub_fields'][] = $array; } return $field; } add_filter('acf/load_field/key=field_604de6ee3ffc6', 'acf_load_post_type_groups');