mirror of
https://github.com/10h30/display-featured-image-genesis.git
synced 2026-06-05 15:08:20 +09:00
Add advanced settings
This commit is contained in:
@@ -509,7 +509,8 @@ class Display_Featured_Image_Genesis_Output {
|
||||
* @return array
|
||||
*/
|
||||
protected function get_hooks() {
|
||||
$large_hook = apply_filters( 'display_featured_image_genesis_move_large_image', 'genesis_before_loop' );
|
||||
$setting = displayfeaturedimagegenesis_get_setting();
|
||||
$large_hook = apply_filters( 'display_featured_image_genesis_move_large_image', $setting['large_hook'] );
|
||||
if ( ! is_singular() || is_page_template( 'page_blog.php' ) ) {
|
||||
$check = strpos( $large_hook, 'entry' ) || strpos( $large_hook, 'post' );
|
||||
if ( false !== $check ) {
|
||||
@@ -519,12 +520,12 @@ class Display_Featured_Image_Genesis_Output {
|
||||
|
||||
return apply_filters( 'displayfeaturedimagegenesis_hooks', array(
|
||||
'backstretch' => array(
|
||||
'hook' => apply_filters( 'display_featured_image_move_backstretch_image', 'genesis_after_header' ),
|
||||
'priority' => apply_filters( 'display_featured_image_move_backstretch_image_priority', 10 ),
|
||||
'hook' => apply_filters( 'display_featured_image_move_backstretch_image', $setting['backstretch_hook'] ),
|
||||
'priority' => apply_filters( 'display_featured_image_move_backstretch_image_priority', $setting['backstretch_priority'] ),
|
||||
),
|
||||
'large' => array(
|
||||
'hook' => $large_hook,
|
||||
'priority' => apply_filters( 'display_featured_image_genesis_move_large_image_priority', 12 ),
|
||||
'priority' => apply_filters( 'display_featured_image_genesis_move_large_image_priority', $setting['large_priority'] ),
|
||||
),
|
||||
) );
|
||||
}
|
||||
|
||||
@@ -14,27 +14,31 @@ class DisplayFeaturedImageGenesisGetSetting {
|
||||
*/
|
||||
public function defaults() {
|
||||
return apply_filters( 'displayfeaturedimagegenesis_defaults', array(
|
||||
'less_header' => 0,
|
||||
'default' => '',
|
||||
'exclude_front' => 0,
|
||||
'keep_titles' => 0,
|
||||
'move_excerpts' => 0,
|
||||
'is_paged' => 0,
|
||||
'feed_image' => 0,
|
||||
'thumbnails' => 0,
|
||||
'post_types' => array(),
|
||||
'skip' => array(),
|
||||
'fallback' => array(),
|
||||
'max_height' => '',
|
||||
'always_default' => 0,
|
||||
'centeredX' => 1,
|
||||
'centeredY' => 1,
|
||||
'fade' => 750,
|
||||
'shortcode' => array(
|
||||
'less_header' => 0,
|
||||
'default' => '',
|
||||
'exclude_front' => 0,
|
||||
'keep_titles' => 0,
|
||||
'move_excerpts' => 0,
|
||||
'is_paged' => 0,
|
||||
'feed_image' => 0,
|
||||
'thumbnails' => 0,
|
||||
'post_types' => array(),
|
||||
'skip' => array(),
|
||||
'fallback' => array(),
|
||||
'max_height' => '',
|
||||
'always_default' => 0,
|
||||
'centeredX' => 1,
|
||||
'centeredY' => 1,
|
||||
'fade' => 750,
|
||||
'shortcode' => array(
|
||||
'displayfeaturedimagegenesis_term' => 0,
|
||||
'displayfeaturedimagegenesis_author' => 0,
|
||||
'displayfeaturedimagegenesis_post_type' => 0,
|
||||
),
|
||||
'backstretch_hook' => 'genesis_after_header',
|
||||
'backstretch_priority' => 10,
|
||||
'large_hook' => 'genesis_before_loop',
|
||||
'large_priority' => 12,
|
||||
) );
|
||||
}
|
||||
|
||||
|
||||
@@ -47,7 +47,6 @@ class Display_Featured_Image_Genesis_Helper extends DisplayFeaturedImageGenesisG
|
||||
* @since 2.4.0
|
||||
*/
|
||||
protected function add_fields( $fields, $sections ) {
|
||||
|
||||
foreach ( $fields as $field ) {
|
||||
add_settings_field(
|
||||
'[' . $field['id'] . ']',
|
||||
@@ -179,6 +178,26 @@ class Display_Featured_Image_Genesis_Helper extends DisplayFeaturedImageGenesisG
|
||||
echo '</fieldset>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Output a select field.
|
||||
*
|
||||
* @param $args
|
||||
*/
|
||||
public function do_select( $args ) {
|
||||
printf( '<select id="%2$s[%1$s]" name="%2$s[%1$s]">',
|
||||
esc_attr( $args['id'] ),
|
||||
esc_attr( $this->page )
|
||||
);
|
||||
foreach ( (array) $args['options'] as $option => $label ) {
|
||||
printf( '<option value="%s" %s>%s</option>',
|
||||
esc_attr( $option ),
|
||||
selected( $option, $this->setting[ $args['id'] ], false ),
|
||||
esc_attr( $label )
|
||||
);
|
||||
}
|
||||
echo '</select>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Generic callback to display a field description.
|
||||
*
|
||||
|
||||
@@ -26,6 +26,10 @@ class Display_Featured_Image_Genesis_Settings_Define extends Display_Featured_Im
|
||||
'id' => 'cpt',
|
||||
'title' => __( 'Featured Images for Custom Content Types', 'display-featured-image-genesis' ),
|
||||
),
|
||||
'advanced' => array(
|
||||
'id' => 'advanced',
|
||||
'title' => __( 'Advanced Plugin Settings', 'display-featured-image-genesis' ),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -37,7 +41,7 @@ class Display_Featured_Image_Genesis_Settings_Define extends Display_Featured_Im
|
||||
*/
|
||||
public function register_fields() {
|
||||
|
||||
return array_merge( $this->define_main_fields(), $this->define_style_fields(), $this->define_cpt_fields() );
|
||||
return array_merge( $this->define_main_fields(), $this->define_style_fields(), $this->define_cpt_fields(), $this->define_advanced_fields() );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -214,6 +218,54 @@ class Display_Featured_Image_Genesis_Settings_Define extends Display_Featured_Im
|
||||
return $fields;
|
||||
}
|
||||
|
||||
/**
|
||||
* Define the fields for the advanced tab.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function define_advanced_fields() {
|
||||
return array(
|
||||
array(
|
||||
'id' => 'backstretch_hook',
|
||||
'title' => __( 'Backstretch Image Hook', 'display-featured-image-genesis' ),
|
||||
'callback' => 'do_select',
|
||||
'section' => 'advanced',
|
||||
'options' => array(
|
||||
'genesis_after_header' => __( 'After Header', 'display-featured-image-genesis' ),
|
||||
'genesis_before_header' => __( 'Before Header', 'display-featured-image-genesis' ),
|
||||
'genesis_header' => __( 'Header', 'display-featured-image-genesis' ),
|
||||
),
|
||||
),
|
||||
array(
|
||||
'id' => 'backstretch_priority',
|
||||
'title' => __( 'Backstretch Image Priority', 'display-featured-image-genesis' ),
|
||||
'callback' => 'do_number',
|
||||
'section' => 'advanced',
|
||||
'label' => '',
|
||||
'min' => 1,
|
||||
'max' => 100,
|
||||
),
|
||||
array(
|
||||
'id' => 'large_hook',
|
||||
'title' => __( 'Large Image Hook', 'display-featured-image-genesis' ),
|
||||
'callback' => 'do_select',
|
||||
'section' => 'advanced',
|
||||
'options' => array(
|
||||
'genesis_before_loop' => __( 'Before Entry Header', 'display-featured-image-genesis' ),
|
||||
),
|
||||
),
|
||||
array(
|
||||
'id' => 'large_priority',
|
||||
'title' => __( 'Large Image Priority', 'display-featured-image-genesis' ),
|
||||
'callback' => 'do_number',
|
||||
'section' => 'advanced',
|
||||
'label' => '',
|
||||
'min' => 1,
|
||||
'max' => 100,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return array
|
||||
*/
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
/**
|
||||
* Class Display_Featured_Image_Genesis_Settings
|
||||
* @package DisplayFeaturedImageGenesis
|
||||
* @package DisplayFeaturedImageGenesis
|
||||
* @copyright 2017 Robin Cornett
|
||||
*/
|
||||
class Display_Featured_Image_Genesis_Settings extends Display_Featured_Image_Genesis_Helper {
|
||||
@@ -151,18 +151,22 @@ class Display_Featured_Image_Genesis_Settings extends Display_Featured_Image_Gen
|
||||
*/
|
||||
protected function define_tabs() {
|
||||
return array(
|
||||
'main' => array(
|
||||
'main' => array(
|
||||
'id' => 'main',
|
||||
'tab' => __( 'Main', 'display-featured-image-genesis' ),
|
||||
),
|
||||
'style' => array(
|
||||
'style' => array(
|
||||
'id' => 'style',
|
||||
'tab' => __( 'Backstretch Output', 'display-featured-image-genesis' ),
|
||||
),
|
||||
'cpt' => array(
|
||||
'cpt' => array(
|
||||
'id' => 'cpt',
|
||||
'tab' => __( 'Content Types', 'display-featured-image-genesis' ),
|
||||
),
|
||||
'advanced' => array(
|
||||
'id' => 'advanced',
|
||||
'tab' => __( 'Advanced', 'display-featured-image-genesis' ),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -194,6 +198,7 @@ class Display_Featured_Image_Genesis_Settings extends Display_Featured_Image_Gen
|
||||
if ( $post_types ) {
|
||||
$description .= __( ' Additionally, since you have custom post types with archives, you might like to set a featured image for each of them.', 'display-featured-image-genesis' );
|
||||
}
|
||||
|
||||
return $description;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user