diff --git a/includes/class-displayfeaturedimagegenesis-common.php b/includes/class-displayfeaturedimagegenesis-common.php index b37db1b..38cbf32 100644 --- a/includes/class-displayfeaturedimagegenesis-common.php +++ b/includes/class-displayfeaturedimagegenesis-common.php @@ -373,7 +373,7 @@ class Display_Featured_Image_Genesis_Common { * whether get_post_type array should use large image instead of backstretch. * @uses is_in_array() */ - if ( self::is_in_array( 'use_large_image' ) || $setting['large'][ $post_type ] ) { + if ( self::is_in_array( 'use_large_image' ) || ( isset( $setting['large'][ $post_type ] ) && $setting['large'][ $post_type ] ) ) { return 'large'; } diff --git a/includes/settings/class-displayfeaturedimagegenesis-helper.php b/includes/settings/class-displayfeaturedimagegenesis-helper.php index 8b79c3c..8a66e0e 100644 --- a/includes/settings/class-displayfeaturedimagegenesis-helper.php +++ b/includes/settings/class-displayfeaturedimagegenesis-helper.php @@ -155,6 +155,7 @@ class Display_Featured_Image_Genesis_Helper extends DisplayFeaturedImageGenesisG ); $this->do_checkbox( $type_args ); } + $this->do_description( $args ); } /** diff --git a/includes/settings/class-displayfeaturedimagegenesis-settings-define.php b/includes/settings/class-displayfeaturedimagegenesis-settings-define.php index c139bc4..9d20f08 100644 --- a/includes/settings/class-displayfeaturedimagegenesis-settings-define.php +++ b/includes/settings/class-displayfeaturedimagegenesis-settings-define.php @@ -194,13 +194,29 @@ class Display_Featured_Image_Genesis_Settings_Define extends Display_Featured_Im 'section' => 'cpt', 'options' => $this->get_post_types(), ), + array( + 'id' => 'fallback', + 'title' => __( 'Prefer Fallback Images', 'display-featured-image-genesis' ), + 'callback' => 'do_checkbox_array', + 'section' => 'cpt', + 'options' => $this->get_post_types(), + 'description' => __( 'Select content types which should always use a fallback image, even if a featured image has been set.', 'display-featured-image-genesis' ), + ), + array( + 'id' => 'large', + 'title' => __( 'Force Large Images', 'display-featured-image-genesis' ), + 'callback' => 'do_checkbox_array', + 'section' => 'cpt', + 'options' => $this->get_post_types(), + 'description' => __( 'Select content types which should always prefer to use the large image size instead of the backstretch, even if a backstretch size image is available.', 'display-featured-image-genesis' ), + ), ); - $custom_pages = array( + $custom_pages = array( 'search' => __( 'Search Results', 'display-featured-image-genesis' ), 'fourohfour' => __( '404 Page', 'display-featured-image-genesis' ), ); - $post_types = array_merge( $custom_pages, $this->get_post_types() ); + $post_types = array_merge( $custom_pages, $this->get_post_types() ); foreach ( $post_types as $post_type => $label ) { $fields[] = array( 'id' => esc_attr( $post_type ), diff --git a/includes/settings/class-displayfeaturedimagegenesis-settings.php b/includes/settings/class-displayfeaturedimagegenesis-settings.php index f6155f3..9b74922 100644 --- a/includes/settings/class-displayfeaturedimagegenesis-settings.php +++ b/includes/settings/class-displayfeaturedimagegenesis-settings.php @@ -239,7 +239,6 @@ class Display_Featured_Image_Genesis_Settings extends Display_Featured_Image_Gen public function set_cpt_image( $args ) { $this->do_image_buttons( $args ); - $this->do_cpt_checkboxes( $args ); if ( empty( $id ) || in_array( $args['id'], array( 'search', 'fourohfour', 'post' ), true ) ) { return; @@ -270,38 +269,6 @@ class Display_Featured_Image_Genesis_Settings extends Display_Featured_Image_Gen $this->render_buttons( $id, $name ); } - /** - * Print the CPT checkboxes. - * - * @param $args - */ - protected function do_cpt_checkboxes( $args ) { - if ( in_array( $args['id'], array( 'search', 'fourohfour' ), true ) ) { - return; - } - $checkbox_args = array( - array( - 'id' => "fallback][{$args['id']}", - /* translators: placeholder is the post type label. */ - 'label' => sprintf( __( 'Always use a fallback image for %s.', 'display-featured-image-genesis' ), esc_attr( $args['title'] ) ), - 'setting_name' => 'fallback', - 'name' => $args['id'], - ), - array( - 'id' => "large][{$args['id']}", - /* translators: placeholder is the post type label. */ - 'label' => sprintf( __( 'Always use a large/not backstretch image for %s.', 'display-featured-image-genesis' ), esc_attr( $args['title'] ) ), - 'setting_name' => 'large', - 'name' => $args['id'], - ), - ); - foreach ( $checkbox_args as $checkbox ) { - echo '

'; - $this->do_checkbox( $checkbox ); - echo '

'; - } - } - /** * Print the CPT description. *