register_control_type( 'GeneratePress_Title_Customize_Control' );
}
// Remove our blog control from the free theme
if ( $wp_customize->get_control( 'blog_content_control' ) ) {
$wp_customize->remove_control( 'blog_content_control' );
}
// Register our custom controls
if ( method_exists( $wp_customize,'register_control_type' ) ) {
$wp_customize->register_control_type( 'GeneratePress_Refresh_Button_Customize_Control' );
$wp_customize->register_control_type( 'GeneratePress_Information_Customize_Control' );
$wp_customize->register_control_type( 'Generate_Control_Toggle_Customize_Control' );
}
// Blog content section
$wp_customize->add_section(
'generate_blog_section',
array(
'title' => __( 'Blog', 'gp-premium' ),
'capability' => 'edit_theme_options',
'panel' => 'generate_layout_panel',
'priority' => 40,
)
);
$wp_customize->add_control(
new GeneratePress_Title_Customize_Control(
$wp_customize,
'generate_blog_archives_title',
array(
'section' => 'generate_blog_section',
'type' => 'generatepress-customizer-title',
'title' => __( 'Content', 'gp-premium' ),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
'priority' => 0,
)
)
);
$wp_customize->add_control(
new Generate_Control_Toggle_Customize_Control(
$wp_customize,
'generate_post_meta_toggle',
array(
'section' => 'generate_blog_section',
'targets' => array(
'post-meta-archives' => __( 'Archives', 'gp-premium' ),
'post-meta-single' => __( 'Single', 'gp-premium' ),
),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
'priority' => 0,
)
)
);
$wp_customize->add_control(
'generate_settings[post_content]',
array(
'type' => 'select',
'label' => __( 'Content type', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'full' => __( 'Full Content', 'gp-premium' ),
'excerpt' => __( 'Excerpt', 'gp-premium' ),
),
'settings' => 'generate_settings[post_content]',
)
);
// Excerpt length
$wp_customize->add_setting(
'generate_blog_settings[excerpt_length]', array(
'default' => $defaults['excerpt_length'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[excerpt_length]', array(
'type' => 'number',
'label' => __( 'Excerpt word count', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[excerpt_length]',
'active_callback' => 'generate_premium_is_excerpt',
)
);
// Read more text
$wp_customize->add_setting(
'generate_blog_settings[read_more]', array(
'default' => $defaults['read_more'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'wp_kses_post',
)
);
$wp_customize->add_control(
'generate_blog_settings[read_more]', array(
'type' => 'text',
'label' => __( 'Read more label', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[read_more]',
)
);
// Read more button
$wp_customize->add_setting(
'generate_blog_settings[read_more_button]',
array(
'default' => $defaults['read_more_button'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[read_more_button]',
array(
'type' => 'checkbox',
'label' => __( 'Display read more as button', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[read_more_button]',
)
);
// Post date
$wp_customize->add_setting(
'generate_blog_settings[date]',
array(
'default' => $defaults['date'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[date]',
array(
'type' => 'checkbox',
'label' => __( 'Display post date', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[date]',
)
);
// Post author
$wp_customize->add_setting(
'generate_blog_settings[author]',
array(
'default' => $defaults['author'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[author]',
array(
'type' => 'checkbox',
'label' => __( 'Display post author', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[author]',
)
);
// Category links
$wp_customize->add_setting(
'generate_blog_settings[categories]',
array(
'default' => $defaults['categories'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[categories]',
array(
'type' => 'checkbox',
'label' => __( 'Display post categories', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[categories]',
)
);
// Tag links
$wp_customize->add_setting(
'generate_blog_settings[tags]',
array(
'default' => $defaults['tags'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[tags]',
array(
'type' => 'checkbox',
'label' => __( 'Display post tags', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[tags]',
)
);
// Comment link
$wp_customize->add_setting(
'generate_blog_settings[comments]',
array(
'default' => $defaults['comments'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[comments]',
array(
'type' => 'checkbox',
'label' => __( 'Display comment count', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[comments]',
)
);
// Infinite scroll
$wp_customize->add_setting(
'generate_blog_settings[infinite_scroll]',
array(
'default' => $defaults['infinite_scroll'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[infinite_scroll]',
array(
'type' => 'checkbox',
'label' => __( 'Use infinite scroll', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[infinite_scroll]',
)
);
// Infinite scroll
$wp_customize->add_setting(
'generate_blog_settings[infinite_scroll_button]',
array(
'default' => $defaults['infinite_scroll_button'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[infinite_scroll_button]',
array(
'type' => 'checkbox',
'label' => __( 'Use button to load more posts', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[infinite_scroll_button]',
'active_callback' => 'generate_premium_infinite_scroll_active',
)
);
// Load more text
$wp_customize->add_setting(
'generate_blog_settings[masonry_load_more]', array(
'default' => $defaults['masonry_load_more'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'wp_kses_post',
)
);
$wp_customize->add_control(
'blog_masonry_load_more_control', array(
'label' => __( 'Load more label', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[masonry_load_more]',
'active_callback' => 'generate_premium_infinite_scroll_button_active',
)
);
// Loading text
$wp_customize->add_setting(
'generate_blog_settings[masonry_loading]', array(
'default' => $defaults['masonry_loading'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'wp_kses_post',
)
);
$wp_customize->add_control(
'blog_masonry_loading_control', array(
'label' => __( 'Loading label', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[masonry_loading]',
'active_callback' => 'generate_premium_infinite_scroll_button_active',
)
);
$wp_customize->add_setting(
'generate_blog_settings[single_date]',
array(
'default' => $defaults['single_date'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_date]',
array(
'type' => 'checkbox',
'label' => __( 'Display post date', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_date]',
)
);
$wp_customize->add_setting(
'generate_blog_settings[single_author]',
array(
'default' => $defaults['single_author'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_author]',
array(
'type' => 'checkbox',
'label' => __( 'Display post author', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_author]',
)
);
$wp_customize->add_setting(
'generate_blog_settings[single_categories]',
array(
'default' => $defaults['single_categories'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_categories]',
array(
'type' => 'checkbox',
'label' => __( 'Display post categories', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_categories]',
)
);
$wp_customize->add_setting(
'generate_blog_settings[single_tags]',
array(
'default' => $defaults['single_tags'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_tags]',
array(
'type' => 'checkbox',
'label' => __( 'Display post tags', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_tags]',
)
);
$wp_customize->add_setting(
'generate_blog_settings[single_post_navigation]',
array(
'default' => $defaults['single_post_navigation'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_navigation]',
array(
'type' => 'checkbox',
'label' => __( 'Display post navigation', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_post_navigation]',
)
);
$wp_customize->add_control(
new GeneratePress_Title_Customize_Control(
$wp_customize,
'generate_blog_featured_images_title',
array(
'section' => 'generate_blog_section',
'type' => 'generatepress-customizer-title',
'title' => __( 'Featured Images', 'gp-premium' ),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
)
)
);
$wp_customize->add_control(
new Generate_Control_Toggle_Customize_Control(
$wp_customize,
'generate_featured_image_toggle',
array(
'section' => 'generate_blog_section',
'targets' => array(
'featured-image-archives' => __( 'Archives', 'gp-premium' ),
'featured-image-single' => __( 'Posts', 'gp-premium' ),
'featured-image-page' => __( 'Pages', 'gp-premium' ),
),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
)
)
);
// Show featured images
$wp_customize->add_setting(
'generate_blog_settings[post_image]',
array(
'default' => $defaults['post_image'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image]',
array(
'type' => 'checkbox',
'label' => __( 'Display featured images', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[post_image]',
)
);
// Padding
$wp_customize->add_setting(
'generate_blog_settings[post_image_padding]',
array(
'default' => $defaults['post_image_padding'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image_padding]',
array(
'type' => 'checkbox',
'label' => __( 'Display padding around images', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[post_image_padding]',
'active_callback' => 'generate_premium_display_image_padding',
)
);
// Location
$wp_customize->add_setting(
'generate_blog_settings[post_image_position]',
array(
'default' => $defaults['post_image_position'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image_position]',
array(
'type' => 'select',
'label' => __( 'Location', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'' => __( 'Below Title', 'gp-premium' ),
'post-image-above-header' => __( 'Above Title', 'gp-premium' ),
),
'settings' => 'generate_blog_settings[post_image_position]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Alignment
$wp_customize->add_setting(
'generate_blog_settings[post_image_alignment]',
array(
'default' => $defaults['post_image_alignment'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image_alignment]',
array(
'type' => 'select',
'label' => __( 'Alignment', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'post-image-aligned-center' => __( 'Center', 'gp-premium' ),
'post-image-aligned-left' => __( 'Left', 'gp-premium' ),
'post-image-aligned-right' => __( 'Right', 'gp-premium' ),
),
'settings' => 'generate_blog_settings[post_image_alignment]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
$wp_customize->add_setting(
'generate_blog_settings[post_image_size]',
array(
'default' => $defaults['post_image_size'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image_size]',
array(
'type' => 'select',
'label' => __( 'Media Attachment Size', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => generate_blog_get_image_sizes(),
'settings' => 'generate_blog_settings[post_image_size]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Width
$wp_customize->add_setting(
'generate_blog_settings[post_image_width]', array(
'default' => $defaults['post_image_width'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_empty_absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image_width]',
array(
'type' => 'number',
'label' => __( 'Width', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[post_image_width]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Height
$wp_customize->add_setting(
'generate_blog_settings[post_image_height]', array(
'default' => $defaults['post_image_height'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_empty_absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[post_image_height]',
array(
'type' => 'number',
'label' => __( 'Height', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[post_image_height]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
$wp_customize->add_control(
new GeneratePress_Information_Customize_Control(
$wp_customize,
'generate_regenerate_images_notice',
array(
'section' => 'generate_blog_section',
'description' => sprintf(
__( 'We will attempt to serve exact image sizes based on your width/height settings. If that is not possible, we will resize your images using CSS. Learn more about featured image sizing %s.', 'gp-premium' ),
'' . __( 'here', 'gp-premium' ) . ''
),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
'active_callback' => 'generate_premium_featured_image_active',
)
)
);
/*
* Single featured images
*/
$wp_customize->add_setting(
'generate_blog_settings[single_post_image]',
array(
'default' => $defaults['single_post_image'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image]',
array(
'type' => 'checkbox',
'label' => __( 'Display featured images', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_post_image]',
)
);
// Padding
$wp_customize->add_setting(
'generate_blog_settings[single_post_image_padding]',
array(
'default' => $defaults['single_post_image_padding'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image_padding]',
array(
'type' => 'checkbox',
'label' => __( 'Display padding around images', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_post_image_padding]',
'active_callback' => 'generate_premium_display_image_padding_single',
)
);
// Location
$wp_customize->add_setting(
'generate_blog_settings[single_post_image_position]',
array(
'default' => $defaults['single_post_image_position'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image_position]',
array(
'type' => 'select',
'label' => __( 'Location', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'below-title' => __( 'Below Title', 'gp-premium' ),
'inside-content' => __( 'Above Title', 'gp-premium' ),
'above-content' => __( 'Above Content Area', 'gp-premium' ),
),
'settings' => 'generate_blog_settings[single_post_image_position]',
'active_callback' => 'generate_premium_single_featured_image_active',
)
);
// Alignment
$wp_customize->add_setting(
'generate_blog_settings[single_post_image_alignment]',
array(
'default' => $defaults['single_post_image_alignment'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image_alignment]',
array(
'type' => 'select',
'label' => __( 'Alignment', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'center' => __( 'Center', 'gp-premium' ),
'left' => __( 'Left', 'gp-premium' ),
'right' => __( 'Right', 'gp-premium' ),
),
'settings' => 'generate_blog_settings[single_post_image_alignment]',
'active_callback' => 'generate_premium_single_featured_image_active',
)
);
$wp_customize->add_setting(
'generate_blog_settings[single_post_image_size]',
array(
'default' => $defaults['single_post_image_size'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image_size]',
array(
'type' => 'select',
'label' => __( 'Media Attachment Size', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => generate_blog_get_image_sizes(),
'settings' => 'generate_blog_settings[single_post_image_size]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Width
$wp_customize->add_setting(
'generate_blog_settings[single_post_image_width]', array(
'default' => $defaults['single_post_image_width'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_empty_absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image_width]',
array(
'type' => 'number',
'label' => __( 'Width', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_post_image_width]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Height
$wp_customize->add_setting(
'generate_blog_settings[single_post_image_height]', array(
'default' => $defaults['single_post_image_height'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_empty_absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[single_post_image_height]',
array(
'type' => 'number',
'label' => __( 'Height', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[single_post_image_height]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
$wp_customize->add_control(
new GeneratePress_Information_Customize_Control(
$wp_customize,
'generate_regenerate_single_post_images_notice',
array(
'section' => 'generate_blog_section',
'description' => sprintf(
__( 'We will attempt to serve exact image sizes based on your width/height settings. If that is not possible, we will resize your images using CSS. Learn more about featured image sizing %s.', 'gp-premium' ),
'' . __( 'here', 'gp-premium' ) . ''
),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
'active_callback' => 'generate_premium_featured_image_active',
)
)
);
/*
* Page featured images
*/
$wp_customize->add_setting(
'generate_blog_settings[page_post_image]',
array(
'default' => $defaults['page_post_image'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image]',
array(
'type' => 'checkbox',
'label' => __( 'Display featured images', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[page_post_image]',
)
);
// Padding
$wp_customize->add_setting(
'generate_blog_settings[page_post_image_padding]',
array(
'default' => $defaults['page_post_image_padding'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image_padding]',
array(
'type' => 'checkbox',
'label' => __( 'Display padding around images', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[page_post_image_padding]',
'active_callback' => 'generate_premium_display_image_padding_single_page',
)
);
// Location
$wp_customize->add_setting(
'generate_blog_settings[page_post_image_position]',
array(
'default' => $defaults['page_post_image_position'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image_position]',
array(
'type' => 'select',
'label' => __( 'Location', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'below-title' => __( 'Below Title', 'gp-premium' ),
'inside-content' => __( 'Above Title', 'gp-premium' ),
'above-content' => __( 'Above Content Area', 'gp-premium' ),
),
'settings' => 'generate_blog_settings[page_post_image_position]',
'active_callback' => 'generate_premium_single_page_featured_image_active',
)
);
// Alignment
$wp_customize->add_setting(
'generate_blog_settings[page_post_image_alignment]',
array(
'default' => $defaults['page_post_image_alignment'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image_alignment]',
array(
'type' => 'select',
'label' => __( 'Alignment', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'center' => __( 'Center', 'gp-premium' ),
'left' => __( 'Left', 'gp-premium' ),
'right' => __( 'Right', 'gp-premium' ),
),
'settings' => 'generate_blog_settings[page_post_image_alignment]',
'active_callback' => 'generate_premium_single_page_featured_image_active',
)
);
$wp_customize->add_setting(
'generate_blog_settings[page_post_image_size]',
array(
'default' => $defaults['page_post_image_size'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image_size]',
array(
'type' => 'select',
'label' => __( 'Media Attachment Size', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => generate_blog_get_image_sizes(),
'settings' => 'generate_blog_settings[page_post_image_size]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Width
$wp_customize->add_setting(
'generate_blog_settings[page_post_image_width]', array(
'default' => $defaults['page_post_image_width'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_empty_absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image_width]',
array(
'type' => 'number',
'label' => __( 'Width', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[page_post_image_width]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
// Height
$wp_customize->add_setting(
'generate_blog_settings[page_post_image_height]', array(
'default' => $defaults['page_post_image_height'],
'capability' => 'edit_theme_options',
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_empty_absint',
)
);
$wp_customize->add_control(
'generate_blog_settings[page_post_image_height]',
array(
'type' => 'number',
'label' => __( 'Height', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[page_post_image_height]',
'active_callback' => 'generate_premium_featured_image_active',
)
);
$wp_customize->add_control(
new GeneratePress_Information_Customize_Control(
$wp_customize,
'generate_regenerate_page_images_notice',
array(
'section' => 'generate_blog_section',
'description' => sprintf(
__( 'We will attempt to serve exact image sizes based on your width/height settings. If that is not possible, we will resize your images using CSS. Learn more about featured image sizing %s.', 'gp-premium' ),
'' . __( 'here', 'gp-premium' ) . ''
),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
'active_callback' => 'generate_premium_featured_image_active',
)
)
);
$wp_customize->add_control(
new GeneratePress_Title_Customize_Control(
$wp_customize,
'generate_blog_columns_title',
array(
'section' => 'generate_blog_section',
'type' => 'generatepress-customizer-title',
'title' => __( 'Columns', 'gp-premium' ),
'settings' => ( isset( $wp_customize->selective_refresh ) ) ? array() : 'blogname',
)
)
);
// Enable columns
$wp_customize->add_setting(
'generate_blog_settings[column_layout]',
array(
'default' => $defaults['column_layout'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[column_layout]',
array(
'type' => 'checkbox',
'label' => __( 'Display posts in columns', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[column_layout]',
)
);
// Column count class
$wp_customize->add_setting(
'generate_blog_settings[columns]',
array(
'default' => $defaults['columns'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_choices',
)
);
$wp_customize->add_control(
'generate_blog_settings[columns]',
array(
'type' => 'select',
'label' => __( 'Columns', 'gp-premium' ),
'section' => 'generate_blog_section',
'choices' => array(
'50' => '2',
'33' => '3',
'25' => '4',
'20' => '5'
),
'settings' => 'generate_blog_settings[columns]',
'active_callback' => 'generate_premium_blog_columns_active',
)
);
// Featured column
$wp_customize->add_setting(
'generate_blog_settings[featured_column]',
array(
'default' => $defaults['featured_column'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[featured_column]',
array(
'type' => 'checkbox',
'label' => __( 'Make first post featured', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[featured_column]',
'active_callback' => 'generate_premium_blog_columns_active',
)
);
// Masonry
$wp_customize->add_setting(
'generate_blog_settings[masonry]',
array(
'default' => $defaults['masonry'],
'type' => 'option',
'sanitize_callback' => 'generate_premium_sanitize_checkbox',
)
);
$wp_customize->add_control(
'generate_blog_settings[masonry]',
array(
'type' => 'checkbox',
'label' => __( 'Display posts in masonry grid', 'gp-premium' ),
'section' => 'generate_blog_section',
'settings' => 'generate_blog_settings[masonry]',
'active_callback' => 'generate_premium_blog_columns_active',
)
);
}
}
add_action( 'customize_controls_print_styles', 'generate_blog_customizer_controls_css' );
function generate_blog_customizer_controls_css() {
?>