diff --git a/includes/class-displayfeaturedimagegenesis-settings.php b/includes/class-displayfeaturedimagegenesis-settings.php
index aacc8f5..be0ed8f 100644
--- a/includes/class-displayfeaturedimagegenesis-settings.php
+++ b/includes/class-displayfeaturedimagegenesis-settings.php
@@ -90,46 +90,51 @@ class Display_Featured_Image_Genesis_Settings {
$fields = array(
array(
- 'id' => 'displayfeaturedimagegenesis[less_header]',
+ 'id' => '[less_header]',
'title' => __( 'Height' , 'display-featured-image-genesis' ),
'callback' => 'header_size',
'section' => $sections['main']['id'],
),
array(
- 'id' => 'displayfeaturedimagegenesis[default]',
+ 'id' => '[default]',
'title' => __( 'Default Featured Image', 'display-featured-image-genesis' ),
'callback' => 'set_default_image',
'section' => $sections['main']['id'],
),
array(
- 'id' => 'displayfeaturedimagegenesis[exclude_front]',
+ 'id' => '[exclude_front]',
'title' => __( 'Skip Front Page', 'display-featured-image-genesis' ),
- 'callback' => 'exclude_front',
+ 'callback' => 'do_checkbox',
'section' => $sections['main']['id'],
+ 'args' => array( 'setting' => 'exclude_front', 'label' => __( 'Do not show the Featured Image on the Front Page of the site.', 'display-featured-image-genesis' ) ),
),
array(
- 'id' => 'displayfeaturedimagegenesis[keep_titles]',
+ 'id' => '[keep_titles]',
'title' => __( 'Do Not Move Titles', 'display-featured-image-genesis' ),
- 'callback' => 'keep_titles',
+ 'callback' => 'do_checkbox',
'section' => $sections['main']['id'],
+ 'args' => array( 'setting' => 'keep_titles', 'label' => __( 'Do not move the titles to overlay the backstretch Featured Image.', 'display-featured-image-genesis' ) ),
),
array(
- 'id' => 'displayfeaturedimagegenesis[move_excerpts]',
+ 'id' => '[move_excerpts]',
'title' => __( 'Move Excerpts/Archive Descriptions', 'display-featured-image-genesis' ),
- 'callback' => 'move_excerpts',
+ 'callback' => 'do_checkbox',
'section' => $sections['main']['id'],
+ 'args' => array( 'setting' => 'move_excerpts', 'label' => __( 'Move excerpts (if used) on single pages and move archive/taxonomy descriptions to overlay the Featured Image.', 'display-featured-image-genesis' ) ),
),
array(
- 'id' => 'displayfeaturedimagegenesis[is_paged]',
+ 'id' => '[is_paged]',
'title' => __( 'Show Featured Image on Subsequent Blog Pages', 'display-featured-image-genesis' ),
- 'callback' => 'check_is_paged',
+ 'callback' => 'do_checkbox',
'section' => $sections['main']['id'],
+ 'args' => array( 'setting' => 'is_paged', 'label' => __( 'Show featured image on pages 2+ of blogs and archives.', 'display-featured-image-genesis' ) ),
),
array(
- 'id' => 'displayfeaturedimagegenesis[feed_image]',
+ 'id' => '[feed_image]',
'title' => __( 'Add Featured Image to Feed?', 'display-featured-image-genesis' ),
- 'callback' => 'add_image_to_feed',
+ 'callback' => 'do_checkbox',
'section' => $sections['main']['id'],
+ 'args' => array( 'setting' => 'feed_image', 'label' => __( 'Optionally, add the featured image to your RSS feed.', 'display-featured-image-genesis' ) ),
),
);
@@ -151,16 +156,12 @@ class Display_Featured_Image_Genesis_Settings {
);
foreach ( $this->post_types as $post ) {
- $args = array(
- 'post_type' => $post,
- );
-
$fields[] = array(
- 'id' => 'displayfeaturedimagegenesis[post_types]' . esc_attr( $post->name ),
+ 'id' => '[post_types]' . esc_attr( $post->name ),
'title' => esc_attr( $post->label ),
'callback' => 'set_cpt_image',
'section' => $sections['cpt']['id'],
- 'args' => $args,
+ 'args' => array( 'post_type' => $post, ),
);
}
}
@@ -176,7 +177,7 @@ class Display_Featured_Image_Genesis_Settings {
foreach ( $fields as $field ) {
add_settings_field(
- $field['id'],
+ $this->page . $field['id'],
'',
array( $this, $field['callback'] ),
$this->page,
@@ -250,72 +251,17 @@ class Display_Featured_Image_Genesis_Settings {
}
/**
- * option to exclude featured image on front page
+ * generic checkbox function (for all checkbox settings)
* @return 0 1 checkbox
*
- * @since 1.4.0
+ * @since 2.3.0
*/
- public function exclude_front() {
- echo '';
- printf( '',
- checked( 1, esc_attr( $this->displaysetting['exclude_front'] ), false ),
- __( 'Do not show the Featured Image on the Front Page of the site.', 'display-featured-image-genesis' )
- );
- }
-
- /**
- * option to not move titles
- * @return 0 1 checkbox
- *
- * @since 2.0.0
- */
- public function keep_titles() {
- echo '';
- printf( '',
- checked( 1, esc_attr( $this->displaysetting['keep_titles'] ), false ),
- __( 'Do not move the titles to overlay the backstretch Featured Image.', 'display-featured-image-genesis' )
- );
- }
-
- /**
- * option to move excerpts to leader image area
- * @return 0 1 checkbox
- *
- * @since 1.3.0
- */
- public function move_excerpts() {
- echo '';
- printf( '',
- checked( 1, esc_attr( $this->displaysetting['move_excerpts'] ), false ),
- __( 'Move excerpts (if used) on single pages and move archive/taxonomy descriptions to overlay the Featured Image.', 'display-featured-image-genesis' )
- );
- }
-
- /**
- * option to show featured image on page 2+ of blog/archives
- * @return 0 1 checkbox
- *
- * @since 2.2.0
- */
- public function check_is_paged() {
- echo '';
- printf( '',
- checked( 1, esc_attr( $this->displaysetting['is_paged'] ), false ),
- __( 'Show featured image on pages 2+ of blogs and archives.', 'display-featured-image-genesis' )
- );
- }
-
- /**
- * option to add images to feed
- * @return 0 1 checkbox
- *
- * @since 1.5.0
- */
- public function add_image_to_feed() {
- echo '';
- printf( '',
- checked( 1, esc_attr( $this->displaysetting['feed_image'] ), false ),
- __( 'Optionally, add the featured image to your RSS feed.', 'display-featured-image-genesis' )
+ public function do_checkbox( $args ) {
+ printf( '', $args['setting'] );
+ printf( '',
+ $args['setting'],
+ checked( 1, esc_attr( $this->displaysetting[ $args['setting'] ] ), false ),
+ $args['label']
);
}