<?php
/*
** Register Theme Customizer
*/
function ashe_customize_register( $wp_customize ) {
/*
** Sanitization Callbacks =====
*/
// checkbox
function ashe_sanitize_checkbox( $input ) {
return $input ? true : false;
}
// select
function ashe_sanitize_select( $input, $setting ) {
// get all select options
$options = $setting->manager->get_control( $setting->id )->choices;
// return default if not valid
return ( array_key_exists( $input, $options ) ? $input : $setting->default );
}
// number absint
function ashe_sanitize_number_absint( $number, $setting ) {
// ensure $number is an absolute integer
$number = absint( $number );
// return default if not integer
if ( $setting->id === 'ashe_options[featured_slider_amount]' ) {
return ( $number < 6 ? $number : $setting->default );
} else {
return ( $number ? $number : $setting->default );
}
}
// textarea
function ashe_sanitize_textarea( $input ) {
$allowedtags = array(
'a' => array(
'href' => array(),
'title' => array(),
'_blank' => array()
),
'img' => array(
'src' => array(),
'alt' => array(),
'width' => array(),
'height' => array(),
'style' => array(),
'class' => array(),
'id' => array()
),
'br' => array(),
'em' => array(),
'strong' => array()
);
// return filtered html
return wp_kses( $input, $allowedtags );
}
// Custom Controls
function ashe_sanitize_custom_control( $input ) {
return $input;
}
/*
** Reusable Functions =====
*/
// checkbox
function ashe_checkbox_control( $section, $id, $name, $transport, $priority ) {
global $wp_customize;
if ( $section !== 'title_tagline' && $section !== 'header_image' ) {
$section_id = 'ashe_'. $section;
} else {
$section_id = $section;
}
if ( $id === 'merge_menu' ) {
$section_id = 'ashe_responsive';
}
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'ashe_sanitize_checkbox'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => $section_id,
'type' => 'checkbox',
'priority' => $priority
) );
}
// text
function ashe_text_control( $section, $id, $name, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'sanitize_text_field'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => 'ashe_'. $section,
'type' => 'text',
'priority' => $priority
) );
}
// color
function ashe_color_control( $section, $id, $name, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'sanitize_hex_color'
) );
$wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => 'ashe_'. $section,
'priority' => $priority
) ) );
}
// textarea
function ashe_textarea_control( $section, $id, $name, $description, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'ashe_sanitize_textarea'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'description' => wp_kses_post($description),
'section' => 'ashe_'. $section,
'type' => 'textarea',
'priority' => $priority
) );
}
// url
function ashe_url_control( $section, $id, $name, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'esc_url_raw'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => 'ashe_'. $section,
'type' => 'text',
'priority' => $priority
) );
}
// number absint
function ashe_number_absint_control( $section, $id, $name, $atts, $transport, $priority ) {
global $wp_customize;
if ( $section !== 'title_tagline' && $section !== 'header_image' ) {
$section_id = 'ashe_'. $section;
} else {
$section_id = $section;
}
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'ashe_sanitize_number_absint'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => $section_id,
'type' => 'number',
'input_attrs' => $atts,
'priority' => $priority
) );
}
// select
function ashe_select_control( $section, $id, $name, $atts, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'ashe_sanitize_select'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => 'ashe_'. $section,
'type' => 'select',
'choices' => $atts,
'priority' => $priority
) );
}
// radio
function ashe_radio_control( $section, $id, $name, $atts, $transport, $priority ) {
global $wp_customize;
if ( $section !== 'header_image' ) {
$section_id = 'ashe_'. $section;
} else {
$section_id = $section;
}
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'capability' => 'edit_theme_options',
'sanitize_callback' => 'ashe_sanitize_select'
) );
$wp_customize->add_control( 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => $section_id,
'type' => 'radio',
'choices' => $atts,
'priority' => $priority
) );
}
// image
function ashe_image_control( $section, $id, $name, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => ashe_options( $section .'_'. $id),
'type' => 'option',
'transport' => $transport,
'sanitize_callback' => 'esc_url_raw'
) );
$wp_customize->add_control(
new WP_Customize_Image_Control( $wp_customize, 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => 'ashe_'. $section,
'priority' => $priority
)
) );
}
// image crop
function ashe_image_crop_control( $section, $id, $name, $width, $height, $transport, $priority ) {
global $wp_customize;
$wp_customize->add_setting( 'ashe_options['. $section .'_'. $id .']', array(
'default' => '',
'type' => 'option',
'transport' => $transport,
'sanitize_callback' => 'ashe_sanitize_number_absint'
) );
$wp_customize->add_control(
new WP_Customize_Cropped_Image_Control( $wp_customize, 'ashe_options['. $section .'_'. $id .']', array(
'label' => $name,
'section' => 'ashe_'. $section,
'flex_width' => true,
'flex_height' => true,
'width' => $width,
'height' => $height,
'priority' => $priority
)
) );
}
// Pro Version
class Ashe_Customize_Pro_Version extends WP_Customize_Control {
public $type = 'pro_options';
public function render_content() {
echo '<span>Want more <strong>'. esc_html( $this->label ) .'</strong>?</span>';
echo '<a href="'. esc_url($this->description) .'" target="_blank">';
echo '<span class="dashicons dashicons-info"></span>';
echo '<strong> '. esc_html__( 'See Ashe PRO', 'ashe' ) .'<strong></a>';
echo '</a>';
}
}
// class Ashe_Customize_Feature_Request_Link extends WP_Customize_Control {
// public $type = 'new_features';
// public function render_content() {
// echo '<a href="https://wp-royal-themes.frill.co/b/6m56290z/feature-ideas" target="_blank">Request or Vote for the New Feature</a>';
// }
// }
/**
* Create our upsell section.
* Escape your URL in the Customizer using esc_url().
*
* @since unknown
*/
class Ashe_Feature_Request_Section extends WP_Customize_Section {
/**
* Set type.
*
* @var public $type
*/
public $type = 'ashe_new_features';
/**
* Set pro URL.
*
* @var public $pro_url
*/
public $feature_url = '';
/**
* Set pro text.
*
* @var public $pro_text
*/
public $feature_text = '';
/**
* Set ID.
*
* @var public $id
*/
public $id = '';
/**
* Send variables to json.
*/
public function json() {
$json = parent::json();
$json['feature_text'] = $this->feature_text;
$json['feature_url'] = esc_url( $this->feature_url );
$json['id'] = $this->id;
return $json;
}
/**
* Render content.
*/
protected function render_template() {
?>
<li id="accordion-section-{{ data.id }}" class="accordion-section control-section control-section-{{ data.type }} cannot-expand control-section-default">
<h3 class="accordion-section-title"><a href="{{{ data.feature_url }}}" target="_blank"><?php echo esc_html__('Request a New Feature', 'ashe') ?></a></h3>
</li>
<?php
}
}
// Pro Version Links
class Ashe_Customize_Pro_Version_Links extends WP_Customize_Control {
public $type = 'pro_links';
public function render_content() {
?>
<ul>
<li class="customize-control">
<h3><?php esc_html_e( 'Upgrade', 'ashe' ); ?> <span>*</span></h3>
<p><?php esc_html_e( 'There are lots of reasons to upgrade to Pro version. Unlimited custom Colors, rich Typography options, multiple variation of Blog Feed layout and way much more. Also Premium Support included.', 'ashe' ); ?></p>
<a href="<?php echo esc_url('https://wp-royal-themes.com/themes/item-ashe-pro/?ref=ashe-free-customizer-about-section-buypro'); ?>" target="_blank" class="button button-primary widefat"><?php esc_html_e( 'Get Ashe Pro', 'ashe' ); ?></a>
</li>
<li class="customize-control">
<h3><?php esc_html_e( 'Support', 'ashe' ); ?></h3>
<p><?php esc_html_e( 'If you have any kind of theme related questions, feel free to ask.', 'ashe' ); ?></p>
<a href="<?php echo esc_url(admin_url('themes.php?page=about-ashe&tab=ashe_tab_4')); ?>" target="_blank" class="button button-primary widefat"><?php esc_html_e( 'Contact Us', 'ashe' ); ?></a>
</li>
<li class="customize-control">
<h3><?php esc_html_e( 'Demo Import / Getting Started', 'ashe' ); ?></h3>
<p><?php esc_html_e( 'All you need for startup: Demo Import, Video Tutorials and more. To see what Ashe theme can offer, please visit a ', 'ashe' ); ?><a href="<?php echo esc_url('https://ashe-free.wp-royal-themes.com/demo/?ref=ashe-free-customizer-about-section-get-started-btn/'); ?>" target="_blank"><?php esc_html_e( 'Demo Preview Page.', 'ashe' ); ?></a></p>
<a href="<?php echo esc_url(admin_url('themes.php?page=about-ashe')); ?>" target="_blank" class="button button-primary widefat"><?php esc_html_e( 'Get Started', 'ashe' ); ?></a>
</li>
<li class="customize-control">
<h3><?php esc_html_e( 'Documentation', 'ashe' ); ?></h3>
<p>
<?php
$theme_data = wp_get_theme();
/* translators: %s theme name */
printf( esc_html__( 'Need more details? Please check our full documentation for detailed information on how to use %s.', 'ashe' ), esc_html( $theme_data->Name ) );
?>
</p>
<a href="<?php echo esc_url('https://wp-royal-themes.com/themes/ashe/docs/?ref=ashe-free-customizer-about-section-docs-btn/'); ?>" target="_blank" class="button button-primary widefat"><?php esc_html_e( 'Documentation', 'ashe' ); ?></a>
</li>
<li class="customize-control">
<h3><?php esc_html_e( 'Predefined Styles', 'ashe' ); ?></h3>
<p>
<?php /* translators: %s link */
printf( __( 'Ashe Pro\'s powerful setup allows you to easily create unique looking sites. Here are a few included examples that can be installed with one click in the Pro Version. More details in the <a href="%s" target="_blank" >Theme Documentation</a>', 'ashe' ), esc_url('https://wp-royal-themes.com/themes/ashe/docs/?ref=ashe-free-backend-about-predefined-styles#predefined') );
?>
</p>
<a href="<?php echo admin_url('themes.php?page=about-ashe#ashe-predefined-styles'); ?>" class="button button-primary widefat"><?php esc_html_e( 'Predefined Styles', 'ashe' ); ?></a>
</li>
<li class="customize-control">
<h3><?php esc_html_e( 'Changelog', 'ashe' ); ?></h3>
<p><?php esc_html_e( 'Want to get the gist on the latest theme changes? Just consult our changelog below to get a taste of the recent fixes and features implemented.', 'ashe' ); ?></p>
<a href="<?php echo esc_url('https://wp-royal-themes.com/ashe-free-changelog/?ref=ashe-free-customizer-about-section-changelog'); ?>" target="_blank" class="button button-primary widefat"><?php esc_html_e( 'Changelog', 'ashe' ); ?></a>
</li>
</ul>
<?php
}
}
// Control Note
class Ashe_Customize_Control_Note extends WP_Customize_Control {
public $type = 'control_note';
public function render_content() {
echo '<span><strong>'. esc_html__( 'Please Note: ', 'ashe' ) .'</strong>'. esc_html( $this->label ) .'</span>';
}
}
// Control Divider
class Ashe_Customize_Control_Divider extends WP_Customize_Control {
public $type = 'control_divider';
public function render_content() {
echo '<hr>';
}
}
/*
** Pro Version =====
*/
// add Colors section
$wp_customize->add_section( 'ashe_pro' , array(
'title' => esc_html__( 'About Ashe', 'ashe' ),
'priority' => 1,
'capability' => 'edit_theme_options'
) );
// Pro Version
$wp_customize->add_setting( 'pro_version_', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version_Links ( $wp_customize,
'pro_version_', array(
'section' => 'ashe_pro',
'type' => 'pro_links',
'label' => '',
'priority' => 1
)
)
);
/*
** Feature Request =====
*/
if ( method_exists( $wp_customize, 'register_section_type' ) ) {
$wp_customize->register_section_type( 'Ashe_Feature_Request_Section' );
}
$wp_customize->add_section(
new Ashe_Feature_Request_Section(
$wp_customize,
'ashe_feature_request_section',
array(
'pro_text' => __( 'Request Feature', 'ashe' ),
'feature_url' => 'https://wp-royal-themes.frill.co/b/6m56290z/feature-ideas',
'capability' => 'edit_theme_options',
'priority' => 1,
'type' => 'ashe_new_features',
)
)
);
/*
** Skins =====
*/
// add Skins section
$wp_customize->add_section( 'ashe_skins' , array(
'title' => esc_html__( 'Skins', 'ashe' ),
'priority' => 2,
'capability' => 'edit_theme_options'
) );
$skin_select = array(
'default' => esc_html__( 'Default', 'ashe' ),
'dark' => esc_html__( 'Dark', 'ashe' ),
'box' => esc_html__( 'Box', 'ashe' ),
);
// Skin Select
ashe_select_control( 'skins', 'select', esc_html__( 'Select Theme Skin', 'ashe' ), $skin_select, 'refresh', 1 );
// Pro Version
$wp_customize->add_setting( 'select_skins_note', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Control_Note ( $wp_customize,
'select_skins_note', array(
'section' => 'ashe_skins',
'type' => 'control_note',
'label' => esc_html__( 'After activating non-default skin, you will NOT be able to take control over skin colors. These options are only available in the Ashe PRO.', 'ashe' ),
'priority' => 2
)
)
);
// Dark Mode Divider
$wp_customize->add_setting( 'dark_mode_divider', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Control_Divider ( $wp_customize,
'dark_mode_divider', array(
'section' => 'ashe_skins',
'type' => 'control_divider',
'priority' => 3
)
)
);
// Dark Mode
ashe_checkbox_control( 'skins', 'dark_mode', esc_html__( 'Show Dark Mode Switcher', 'ashe' ), 'refresh', 4 );
// Dark Mode Note
$wp_customize->add_setting( 'dark_mode_note', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Control_Note ( $wp_customize,
'dark_mode_note', array(
'section' => 'ashe_skins',
'type' => 'control_note',
'label' => esc_html__( 'Switcher icon will be added to the right of the Navigation Menu. When the Dark Mode is enabled color controls will NOT work except Accent Color control. Dark Mode design reduces the light emitted by device screens while maintaining the minimum color contrast ratios required for readability.', 'ashe' ),
'priority' => 5
)
)
);
// Pro Version
$wp_customize->add_setting( 'pro_version_skins', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_skins', array(
'section' => 'ashe_skins',
'type' => 'pro_options',
'label' => esc_html__( 'Skins', 'ashe' ),
'description' => esc_html( 'https://wp-royal-themes.com/themes/item-ashe-pro/?ref=ashe-free-skin-customizer#!/ashe-pro-page-colors' ),
'priority' => 100
)
)
);
/*
** Colors =====
*/
// add Colors section
$wp_customize->add_section( 'ashe_colors' , array(
'title' => esc_html__( 'Colors', 'ashe' ),
'priority' => 3,
'capability' => 'edit_theme_options'
) );
// Content Accent
ashe_color_control( 'colors', 'content_accent', esc_html__( 'Accent', 'ashe' ), 'postMessage', 3 );
$wp_customize->get_control( 'header_textcolor' )->section = 'ashe_colors';
$wp_customize->get_control( 'header_textcolor' )->priority = 6;
$wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage';
// Header Background
ashe_color_control( 'colors', 'header_bg', esc_html__( 'Header Background', 'ashe' ), 'postMessage', 9 );
// Body Background
$wp_customize->get_control( 'background_color' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_color' )->priority = 12;
$wp_customize->get_control( 'background_color' )->label = 'Body Background';
$wp_customize->get_control( 'background_image' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_image' )->priority = 15;
$wp_customize->get_control( 'background_preset' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_preset' )->priority = 18;
$wp_customize->get_control( 'background_position' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_position' )->priority = 21;
$wp_customize->get_control( 'background_size' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_size' )->priority = 23;
$wp_customize->get_control( 'background_repeat' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_repeat' )->priority = 25;
$wp_customize->get_control( 'background_attachment' )->section = 'ashe_colors';
$wp_customize->get_control( 'background_attachment' )->priority = 27;
// Pro Version
$wp_customize->add_setting( 'pro_version_colors', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_colors', array(
'section' => 'ashe_colors',
'type' => 'pro_options',
'label' => esc_html__( 'Colors', 'ashe' ),
// 'description' => esc_html( 'https://wp-royal-themes.com/themes/item-ashe-pro/?ref=ashe-free-colors-customizer#!/ashe-pro-page-colors' ),
'description' => esc_html( 'https://ashe-pro.wp-royal-themes.com/wp-content/plugins/open-house-theme-options/redirect.php?multisite=food§ion=ashe_colors' ),
'priority' => 100
)
)
);
/*
** General Layouts =====
*/
// add General Layouts section
$wp_customize->add_section( 'ashe_general' , array(
'title' => esc_html__( 'General Layouts', 'ashe' ),
'priority' => 3,
'capability' => 'edit_theme_options'
) );
// Sidebar Width
ashe_number_absint_control( 'general', 'sidebar_width', esc_html__( 'Sidebar Width', 'ashe' ), array( 'step' => '1' ), 'refresh', 3 );
// Sticky Sidebar
ashe_checkbox_control( 'general', 'sidebar_sticky', esc_html__( 'Enable Sticky Sidebar', 'ashe' ), 'refresh', 5 );
// Page Layout Combinations
$page_layouts = array(
'col1-rsidebar' => esc_html__( '1 Column', 'ashe' ),
'list-rsidebar' => esc_html__( 'List Style', 'ashe' ),
);
// Blog Page Layout
ashe_select_control( 'general', 'home_layout', esc_html__( 'Blog Page', 'ashe' ), $page_layouts, 'refresh', 13 );
$boxed_width = array(
'full' => esc_html__( 'Full', 'ashe' ),
'contained' => esc_html__( 'Contained', 'ashe' ),
'boxed' => esc_html__( 'Boxed', 'ashe' ),
);
// Header Width
ashe_select_control( 'general', 'header_width', esc_html__( 'Header Width', 'ashe' ), $boxed_width, 'refresh', 25 );
$boxed_width_slider = array(
'full' => esc_html__( 'Full', 'ashe' ),
'boxed' => esc_html__( 'Boxed', 'ashe' ),
);
// Slider Width
ashe_select_control( 'general', 'slider_width', esc_html__( 'Featured Slider Width', 'ashe' ), $boxed_width_slider, 'refresh', 27 );
// Featured Links Width
ashe_select_control( 'general', 'links_width', esc_html__( 'Featured Links Width', 'ashe' ), $boxed_width_slider, 'refresh', 28 );
// Content Width
ashe_select_control( 'general', 'content_width', esc_html__( 'Content Width', 'ashe' ), $boxed_width_slider, 'refresh', 29 );
// Single Content Width
ashe_select_control( 'general', 'single_width', esc_html__( 'Single Content Width', 'ashe' ), $boxed_width_slider, 'refresh', 31 );
// Footer Width
ashe_select_control( 'general', 'footer_width', esc_html__( 'Footer Width', 'ashe' ), $boxed_width, 'refresh', 33 );
// Pro Version
$wp_customize->add_setting( 'pro_version_general_layouts', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_general_layouts', array(
'section' => 'ashe_general',
'type' => 'pro_options',
'label' => esc_html__( 'Layout Options', 'ashe' ),
'description' => esc_html( 'https://wp-royal-themes.com/themes/item-ashe-pro/?ref=ashe-free-general-layouts-customizer#!/ashe-pro-page-layouts' ),
'priority' => 100
)
)
);
/*
** Top Bar =====
*/
// add Top Bar section
$wp_customize->add_section( 'ashe_top_bar' , array(
'title' => esc_html__( 'Top Bar', 'ashe' ),
'priority' => 5,
'capability' => 'edit_theme_options'
) );
// Top Bar label
ashe_checkbox_control( 'top_bar', 'label', esc_html__( 'Top Bar', 'ashe' ), 'refresh', 1 );
/*
** Header Image =====
*/
$wp_customize->get_section( 'header_image' )->priority = 10;
// Page Header label
ashe_checkbox_control( 'header_image', 'label', esc_html__( 'Page Header', 'ashe' ), 'refresh', 1 );
$bg_image_size = array(
'cover' => esc_html__( 'Cover', 'ashe' ),
'initial' => esc_html__( 'Pattern', 'ashe' )
);
// Background Image Size
ashe_radio_control( 'header_image', 'bg_image_size', esc_html__( 'Background Image Size', 'ashe' ), $bg_image_size, 'refresh', 10 );
// Pro Version
$wp_customize->add_setting( 'pro_version_header', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_header', array(
'section' => 'header_image',
'type' => 'pro_options',
'label' => esc_html__( 'Header Options', 'ashe' ),
// 'description' => esc_html( 'https://wp-royal-themes.com/themes/ashe/customizer/free/header-image2.html?ref=ashe-free-header-customizer' ),
'description' => esc_html( 'https://ashe-pro.wp-royal-themes.com/wp-content/plugins/open-house-theme-options/redirect.php?multisite=lifestyle§ion=header_image' ),
'priority' => 100
)
)
);
/*
** Site Identity =====
*/
// Logo Width
ashe_number_absint_control( 'title_tagline', 'logo_width', esc_html__( 'Width', 'ashe' ), array( 'step' => '10' ), 'postMessage', 8 );
// SEO Title
ashe_checkbox_control( 'title_tagline', 'seo_title', esc_html__( 'Enable Hidden Title (h1 missing SEO issue)', 'ashe' ), 'refresh', 17 );
$wp_customize->get_control( 'custom_logo' )->transport = 'selective_refresh';
// Pro Version
$wp_customize->add_setting( 'pro_version_logo', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_logo', array(
'section' => 'title_tagline',
'type' => 'pro_options',
'label' => esc_html__( 'Logo Options', 'ashe' ),
// 'description' => esc_html( 'https://wp-royal-themes.com/themes/ashe/customizer/free/typography-logo.html?ref=ashe-free-site-identity-customizer' ),
'description' => esc_html( 'https://ashe-pro.wp-royal-themes.com/wp-content/plugins/open-house-theme-options/redirect.php?multisite=typography-v2§ion=ashe_typography' ),
'priority' => 50
)
)
);
/*
** Main Navigation =====
*/
// add Main Navigation section
$wp_customize->add_section( 'ashe_main_nav' , array(
'title' => esc_html__( 'Main Navigation', 'ashe' ),
'priority' => 23,
'capability' => 'edit_theme_options'
) );
// Main Navigation
ashe_checkbox_control( 'main_nav', 'label', esc_html__( 'Main Navigation', 'ashe' ), 'refresh', 1 );
$main_nav_align = array(
'left' => esc_html__( 'Left', 'ashe' ),
'center' => esc_html__( 'Center', 'ashe' ),
'right' => esc_html__( 'Right', 'ashe' ),
);
// Align
ashe_select_control( 'main_nav', 'align', esc_html__( 'Align', 'ashe' ), $main_nav_align, 'refresh', 7 );
// Show Search Icon
ashe_checkbox_control( 'main_nav', 'show_search', esc_html__( 'Show Search Icon', 'ashe' ), 'refresh', 13 );
// Show Sidebar Icon
ashe_checkbox_control( 'main_nav', 'show_sidebar', esc_html__( 'Show Sidebar Icon', 'ashe' ), 'refresh', 15 );
// Simple Header
ashe_checkbox_control( 'main_nav', 'simple_header', esc_html__( 'Show Simple Header', 'ashe' ), 'refresh', 16 );
// Mini Logo
ashe_image_control( 'main_nav', 'mini_logo', esc_html__( 'Logo Upload', 'ashe' ), 'refresh', 17 );
// Mini Logo Width
ashe_number_absint_control( 'main_nav', 'mini_logo_width', esc_html__( 'Logo Width', 'ashe' ), array( 'step' => '1' ), 'postMessage', 19 );
/*
** Featured Slider =====
*/
// add featured slider section
$wp_customize->add_section( 'ashe_featured_slider' , array(
'title' => esc_html__( 'Featured Slider', 'ashe' ),
'priority' => 25,
'capability' => 'edit_theme_options'
) );
// Featured Slider
ashe_checkbox_control( 'featured_slider', 'label', esc_html__( 'Featured Slider', 'ashe' ), 'refresh', 1 );
$slider_display = array(
'front' => esc_html__( 'Front Page', 'ashe' ),
'blog' => esc_html__( 'Posts Page', 'ashe' ),
'both' => esc_html__( 'Front and Posts Pages', 'ashe' ),
);
// Slider Location
ashe_select_control( 'featured_slider', 'location', esc_html__( 'Display Slider on', 'ashe' ), $slider_display, 'refresh', 2 );
$slider_source = array(
'custom' => esc_html__( 'Custom', 'ashe' ),
'posts' => esc_html__( 'Posts', 'ashe' ),
);
// Source
ashe_select_control( 'featured_slider', 'source', esc_html__( 'Source', 'ashe' ), $slider_source, 'refresh', 3 );
// Repeater
$wp_customize->add_setting( 'featured_slider_repeater', array(
'sanitize_callback' => 'customizer_repeater_sanitize',
'default' => json_encode( array(
array(
'image_url' => '',
'title' => 'Slide 1 Title',
'text' => 'Slide 1 Description. Some lorem ipsum dolor sit amet text',
'link' => '',
'btn_text' => 'Button 1',
'checkbox' => '0',
'id' => 'customizer_repeater_56d7ea7f40af1'
),
array(
'image_url' => '',
'title' => 'Slide 2 Title',
'text' => 'Slide 2 Description. Some lorem ipsum dolor sit amet text',
'link' => '',
'btn_text' => 'Button 2',
'checkbox' => '0',
'id' => 'customizer_repeater_56d7ea7f40af2'
),
array(
'image_url' => '',
'title' => 'Slide 3 Title',
'text' => 'Slide 3 Description. Some lorem ipsum dolor sit amet text',
'link' => '',
'btn_text' => 'Button 3',
'checkbox' => '0',
'id' => 'customizer_repeater_56d7ea7f40af3'
),
) )
));
$wp_customize->add_control( new Customizer_Repeater( $wp_customize, 'featured_slider_repeater', array(
'label' => esc_html__( 'Slider Item','ashe') ,
'section' => 'ashe_featured_slider',
'customizer_repeater_image_control' => true,
'customizer_repeater_title_control' => true,
'customizer_repeater_text_control' => true,
'customizer_repeater_btn_text_control' => true,
'customizer_repeater_link_control' => true,
'customizer_repeater_checkbox_control' => true,
'priority' => 4,
) ) );
$slider_display = array(
'all' => 'All Posts',
'category' => 'by Post Category'
);
// Display
ashe_select_control( 'featured_slider', 'display', esc_html__( 'Display Posts', 'ashe' ), $slider_display, 'refresh', 5 );
$slider_cats = array();
foreach ( get_categories() as $categories => $category ) {
$slider_cats[$category->term_id] = $category->name;
}
// Category
ashe_select_control( 'featured_slider', 'category', esc_html__( 'Select Category', 'ashe' ), $slider_cats, 'refresh', 6 );
// Amount
ashe_number_absint_control( 'featured_slider', 'amount', esc_html__( 'Number of Slides', 'ashe' ), array( 'step' => '1', 'max' => '5' ), 'refresh', 10 );
// Exclude Images
ashe_checkbox_control( 'featured_slider', 'exc_images', esc_html__( 'Exclude Slides without Images', 'ashe' ), 'refresh', 20 );
// Navigation
ashe_checkbox_control( 'featured_slider', 'navigation', esc_html__( 'Show Navigation Arrows', 'ashe' ), 'refresh', 25 );
// Pagination
ashe_checkbox_control( 'featured_slider', 'pagination', esc_html__( 'Show Pagination Dots', 'ashe' ), 'refresh', 30 );
// Pro Version
$wp_customize->add_setting( 'pro_version_featured_slider', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_featured_slider', array(
'section' => 'ashe_featured_slider',
'type' => 'pro_options',
'label' => esc_html__( 'Slider Options ', 'ashe' ),
'description' => esc_html( 'https://wp-royal-themes.com/themes/item-ashe-pro/?ref=ashe-free-general-layouts-customizer#!/ashe-pro-page-sliders' ),
'priority' => 100
)
)
);
/*
** Featured Links =====
*/
// add featured links section
$wp_customize->add_section( 'ashe_featured_links' , array(
'title' => esc_html__( 'Featured Links', 'ashe' ),
'priority' => 27,
'capability' => 'edit_theme_options'
) );
// Featured Links
ashe_checkbox_control( 'featured_links', 'label', esc_html__( 'Featured Links', 'ashe' ), 'refresh', 1 );
$featured_links_display = array(
'front' => esc_html__( 'Front Page', 'ashe' ),
'blog' => esc_html__( 'Posts Page', 'ashe' ),
'both' => esc_html__( 'Front and Posts Pages', 'ashe' ),
);
// Slider Location
ashe_select_control( 'featured_links', 'location', esc_html__( 'Display Featured Links on', 'ashe' ), $featured_links_display, 'refresh', 2 );
// Link #1 Title
ashe_text_control( 'featured_links', 'title_1', esc_html__( 'Title', 'ashe' ), 'refresh', 9 );
// Link #1 URL
ashe_url_control( 'featured_links', 'url_1', esc_html__( 'URL', 'ashe' ), 'refresh', 11 );
// Link #1 Image
ashe_image_crop_control( 'featured_links', 'image_1', esc_html__( 'Image', 'ashe' ), 600, 340, 'refresh', 13 );
// Link #2 Title
ashe_text_control( 'featured_links', 'title_2', esc_html__( 'Title', 'ashe' ), 'refresh', 15 );
// Link #2 URL
ashe_url_control( 'featured_links', 'url_2', esc_html__( 'URL', 'ashe' ), 'refresh', 17 );
// Link #2 Image
ashe_image_crop_control( 'featured_links', 'image_2', esc_html__( 'Image', 'ashe' ), 600, 340, 'refresh', 19 );
// Link #3 Title
ashe_text_control( 'featured_links', 'title_3', esc_html__( 'Title', 'ashe' ), 'refresh', 21 );
// Link #3 URL
ashe_url_control( 'featured_links', 'url_3', esc_html__( 'URL', 'ashe' ), 'refresh', 23 );
// Link #3 Image
ashe_image_crop_control( 'featured_links', 'image_3', esc_html__( 'Image', 'ashe' ), 600, 340, 'refresh', 25 );
// Pro Version
$wp_customize->add_setting( 'pro_version_featured_links', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_featured_links', array(
'section' => 'ashe_featured_links',
'type' => 'pro_options',
'label' => esc_html__( 'Feat. Links Options ', 'ashe' ),
// 'description' => esc_html( 'https://wp-royal-themes.com/themes/ashe/customizer/free/featured-links.html?ref=ashe-free-featured-links' ),
'description' => esc_html( 'https://ashe-pro.wp-royal-themes.com/wp-content/plugins/open-house-theme-options/redirect.php?multisite=sample-v5§ion=ashe_featured_links' ),
'priority' => 100
)
)
);
/*
** Blog Page =====
*/
// add Blog Page section
$wp_customize->add_section( 'ashe_blog_page' , array(
'title' => esc_html__( 'Blog Page', 'ashe' ),
'priority' => 29,
'capability' => 'edit_theme_options'
) );
$post_description = array(
'none' => esc_html__( 'None', 'ashe' ),
'excerpt' => esc_html__( 'Post Excerpt', 'ashe' ),
'content' => esc_html__( 'Post Content', 'ashe' ),
);
// Post Description
ashe_select_control( 'blog_page', 'post_description', esc_html__( 'Post Description', 'ashe' ), $post_description, 'refresh', 3 );
$post_pagination = array(
'default' => esc_html__( 'Default', 'ashe' ),
'numeric' => esc_html__( 'Numeric', 'ashe' ),
);
// Post Pagination
ashe_select_control( 'blog_page', 'post_pagination', esc_html__( 'Post Pagination', 'ashe' ), $post_pagination, 'refresh', 5 );
// Show Drop Caps
ashe_checkbox_control( 'blog_page', 'show_dropcaps', esc_html__( 'Show Drop Caps (First Big Letter)', 'ashe' ), 'refresh', 6 );
// Show Categories
ashe_checkbox_control( 'blog_page', 'show_categories', esc_html__( 'Show Categories', 'ashe' ), 'refresh', 7 );
// Show Date
ashe_checkbox_control( 'blog_page', 'show_date', esc_html__( 'Show Date', 'ashe' ), 'refresh', 8 );
// Show Comments
ashe_checkbox_control( 'blog_page', 'show_comments', esc_html__( 'Show Comments', 'ashe' ), 'refresh', 9 );
// Show Author
ashe_checkbox_control( 'blog_page', 'show_author', esc_html__( 'Show Author', 'ashe' ), 'refresh', 13 );
// Show Facebook
ashe_checkbox_control( 'blog_page', 'show_facebook', esc_html__( 'Show Facebook', 'ashe' ), 'refresh', 17 );
// Show Twitter
ashe_checkbox_control( 'blog_page', 'show_twitter', esc_html__( 'Show Twitter', 'ashe' ), 'refresh', 19 );
// Show Pinterest
ashe_checkbox_control( 'blog_page', 'show_pinterest', esc_html__( 'Show Pinterest', 'ashe' ), 'refresh', 21 );
// Show WhatsApp
ashe_checkbox_control( 'blog_page', 'show_whatsapp', esc_html__( 'Show WhatsApp', 'ashe' ), 'refresh', 23 );
// Show Linkedin
ashe_checkbox_control( 'blog_page', 'show_linkedin', esc_html__( 'Show Linkedin', 'ashe' ), 'refresh', 25 );
// Show reddit
ashe_checkbox_control( 'blog_page', 'show_reddit', esc_html__( 'Show Reddit', 'ashe' ), 'refresh', 27 );
// Show Tumblr
ashe_checkbox_control( 'blog_page', 'show_tumblr', esc_html__( 'Show Tumblr', 'ashe' ), 'refresh', 29 );
$related_posts = array(
'none' => esc_html__( 'None', 'ashe' ),
'related' => esc_html__( 'Related', 'ashe' )
);
// Related Posts Orderby
ashe_select_control( 'blog_page', 'related_orderby', esc_html__( 'Related Posts - Display', 'ashe' ), $related_posts, 'refresh', 33 );
// Pro Version
$wp_customize->add_setting( 'pro_version_blog_page', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_blog_page', array(
'section' => 'ashe_blog_page',
'type' => 'pro_options',
'label' => esc_html__( 'Blog Options ', 'ashe' ),
'description' => esc_html( 'https://wp-royal-themes.com/themes/item-ashe-pro/?ref=ashe-free-general-layouts-customizer#!/ashe-pro-page-layouts' ),
'priority' => 100
)
)
);
/*
** Single Post =====
*/
// add single post section
$wp_customize->add_section( 'ashe_single_page' , array(
'title' => esc_html__( 'Single Post', 'ashe' ),
'priority' => 31,
'capability' => 'edit_theme_options'
) );
// Show Featured Image
ashe_checkbox_control( 'single_page', 'show_featured_image', esc_html__( 'Show Featured Image', 'ashe' ), 'refresh', 5 );
// Show Categories
ashe_checkbox_control( 'single_page', 'show_categories', esc_html__( 'Show Categories', 'ashe' ), 'refresh', 5 );
// Show Date
ashe_checkbox_control( 'single_page', 'show_date', esc_html__( 'Show Date', 'ashe' ), 'refresh', 7 );
// Show Comments
ashe_checkbox_control( 'single_page', 'show_comments', esc_html__( 'Show Comments', 'ashe' ), 'refresh', 13 );
// Show Author
ashe_checkbox_control( 'single_page', 'show_author', esc_html__( 'Show Author', 'ashe' ), 'refresh', 15 );
// Show Author Description
ashe_checkbox_control( 'single_page', 'show_author_desc', esc_html__( 'Show Author Description', 'ashe' ), 'refresh', 18 );
// Related Posts Orderby
ashe_select_control( 'single_page', 'related_orderby', esc_html__( 'Related Posts - Display', 'ashe' ), $related_posts, 'refresh', 23 );
/*
** Social Media =====
*/
// add social media section
$wp_customize->add_section( 'ashe_social_media' , array(
'title' => esc_html__( 'Social Media', 'ashe' ),
'priority' => 33,
'capability' => 'edit_theme_options'
) );
// Social Window
ashe_checkbox_control( 'social_media', 'window', esc_html__( 'Open Social Links in New Window', 'ashe' ), 'refresh', 1 );
// Social Icons Array
$social_icons = array(
'facebook' => 'Facebook 1',
'facebook-official' => 'Facebook 2',
'facebook-square' => 'Facebook 3',
'twitter' => 'Twitter 1',
'twitter-square' => 'Twitter 2',
'x-twitter' => 'Twitter 3',
'google' => 'Google',
'linkedin' => 'Linkedin 1',
'linkedin-square' => 'Linkedin 2',
'pinterest' => 'Pinterest 1',
'pinterest-p' => 'Pinterest 2',
'pinterest-square' => 'Pinterest 3',
'behance' => 'Behance 1',
'behance-square' => 'Behance 2',
'tumblr' => 'Tumblr 1',
'tumblr-square' => 'Tumblr 2',
'reddit' => 'Reddit 1',
'reddit-alien' => 'Reddit 2',
'reddit-square' => 'Reddit 3',
'dribbble' => 'Dribbble',
'whatsapp' => 'Whatsapp 1',
'square-whatsapp' => 'Whatsapp 2',
'vk' => 'vKontakte',
'telegram' => 'Telegram',
'odnoklassniki' => 'Odnoklassniki',
'skype' => 'Skype',
'patreon' => 'Patreon',
'film' => 'Film',
'youtube-play' => 'Youtube 1',
'youtube-square' => 'Youtube 2',
'vimeo-square' => 'Vimeo',
'twitch' => 'Twitch',
'discord' => 'Discord',
'kickstarter' => 'KickStarter 1',
'kickstarter-k' => 'KickStarter 2',
'soundcloud' => 'Soundcloud',
'instagram' => 'Instagram',
'info' => 'Info 1',
'info-circle' => 'Info 2',
'flickr' => 'Flickr',
'rss' => 'RSS 1',
'rss-square' => 'RSS 2',
'heart' => 'Heart 1',
'heart-o' => 'Heart 2',
'github' => 'Github 1',
'github-alt' => 'Github 2',
'github-square' => 'Github 3',
'goodreads-g' => 'Goodreads',
'stack-overflow' => 'Stack Overflow',
'qq' => 'QQ',
'weibo' => 'Weibo',
'weixin' => 'Weixin',
'xing' => 'Xing 1',
'xing-square' => 'Xing 2',
'gamepad' => 'Gamepad',
'medium' => 'Medium',
'mastodon' => 'Mastodon',
'map-marker' => 'Map Marker',
'envelope' => 'Envelope 1',
'envelope-o' => 'Envelope 2',
'envelope-square ' => 'Envelope 3',
'etsy' => 'Etsy',
'snapchat' => 'Snapchat 1',
'snapchat-square' => 'Snapchat 2',
'tiktok' => 'Tiktok',
'spotify' => 'Spotify',
'deviantart' => 'DeviantArt',
'shopping-cart' => 'Cart',
'meetup' => 'Meetup',
'cc-paypal' => 'PayPal',
'credit-card' => 'Credit Card',
);
// Social #1 Icon
ashe_select_control( 'social_media', 'icon_1', esc_html__( 'Select Icon', 'ashe' ), $social_icons, 'refresh', 3 );
// Social #1 Icon
ashe_url_control( 'social_media', 'url_1', esc_html__( 'URL', 'ashe' ), 'refresh', 5 );
// Social #2 Icon
ashe_select_control( 'social_media', 'icon_2', esc_html__( 'Select Icon', 'ashe' ), $social_icons, 'refresh', 7 );
// Social #2 Icon
ashe_url_control( 'social_media', 'url_2', esc_html__( 'URL', 'ashe' ), 'refresh', 9 );
// Social #3 Icon
ashe_select_control( 'social_media', 'icon_3', esc_html__( 'Select Icon', 'ashe' ), $social_icons, 'refresh', 11 );
// Social #3 Icon
ashe_url_control( 'social_media', 'url_3', esc_html__( 'URL', 'ashe' ), 'refresh', 13 );
// Social #4 Icon
ashe_select_control( 'social_media', 'icon_4', esc_html__( 'Select Icon', 'ashe' ), $social_icons, 'refresh', 15 );
// Social #4 Icon
ashe_url_control( 'social_media', 'url_4', esc_html__( 'URL', 'ashe' ), 'refresh', 17 );
/*
** Typography =====
*/
// add Typography section
$wp_customize->add_section( 'ashe_typography' , array(
'title' => esc_html__( 'Typography', 'ashe' ),
'priority' => 34,
'capability' => 'edit_theme_options'
) );
$font_family = array(
'Open+Sans' => esc_html__( 'Open Sans', 'ashe' ),
'Rokkitt' => esc_html__( 'Rokkitt', 'ashe' ),
'Kalam' => esc_html__( 'Kalam', 'ashe' )
);
// Logo Font Family
ashe_select_control( 'typography', 'logo_family', esc_html__( 'Font Family', 'ashe' ), $font_family, 'refresh', 1 );
// Navigation Font Family
ashe_select_control( 'typography', 'nav_family', esc_html__( 'Font Family', 'ashe' ), $font_family, 'refresh', 5 );
// Italic
ashe_checkbox_control( 'typography', 'nav_italic', esc_html__( 'Italic', 'ashe' ), 'postMessage', 7 );
// Uppercase
ashe_checkbox_control( 'typography', 'nav_uppercase', esc_html__( 'Uppercase', 'ashe' ), 'postMessage', 8 );
// Pro Version
$wp_customize->add_setting( 'pro_version_typography', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_typography', array(
'section' => 'ashe_typography',
'type' => 'pro_options',
'label' => esc_html__( 'Typography Options', 'ashe' ),
// 'description' => esc_html( 'https://wp-royal-themes.com/themes/ashe/customizer/free/typography-logo.html?ref=ashe-free-typography-customizer' ),
'description' => esc_html( 'https://ashe-pro.wp-royal-themes.com/wp-content/plugins/open-house-theme-options/redirect.php?multisite=typography-v2§ion=ashe_typography' ),
'priority' => 10
)
)
);
/*
** Page Footer =====
*/
// add page footer section
$wp_customize->add_section( 'ashe_page_footer' , array(
'title' => esc_html__( 'Page Footer', 'ashe' ),
'priority' => 35,
'capability' => 'edit_theme_options'
) );
$copyright_description = 'Enter <strong>$year</strong> to update the year automatically and <strong>$copy</strong> for the copyright symbol.<br><br>Example: $year Ashe Theme $copy.';
// Copyright
ashe_textarea_control( 'page_footer', 'copyright', esc_html__( 'Your Copyright Text', 'ashe' ), $copyright_description, 'refresh', 3 );
// Show Scroll-Top Button
ashe_checkbox_control( 'page_footer', 'show_scrolltop', esc_html__( 'Show Scroll-Top Button', 'ashe' ), 'refresh', 5 );
// Pro Version
$wp_customize->add_setting( 'pro_version_page_footer', array(
'sanitize_callback' => 'ashe_sanitize_custom_control'
) );
$wp_customize->add_control( new Ashe_Customize_Pro_Version ( $wp_customize,
'pro_version_page_footer', array(
'section' => 'ashe_page_footer',
'type' => 'pro_options',
'label' => esc_html__( 'Footer Options', 'ashe' ),
// 'description' => esc_html( 'https://wp-royal-themes.com/themes/ashe/customizer/free/page-footer.html?ref=ashe-free-page-footer-customizer' ),
'description' => esc_html( 'https://ashe-pro.wp-royal-themes.com/wp-content/plugins/open-house-theme-options/redirect.php?multisite=typography-v2§ion=ashe_page_footer' ),
'priority' => 100
)
)
);
/*
** Preloader =====
*/
// add Preloader section
$wp_customize->add_section( 'ashe_preloader' , array(
'title' => esc_html__( 'Preloader', 'ashe' ),
'priority' => 45,
'capability' => 'edit_theme_options'
) );
// Preloading Animation
ashe_checkbox_control( 'preloader', 'label', esc_html__( 'Preloading Animation', 'ashe' ), 'refresh', 1 );
/*
** Responsive =====
*/
// add Responsive section
$wp_customize->add_section( 'ashe_responsive' , array(
'title' => esc_html__( 'Responsive', 'ashe' ),
'description' => esc_html__( 'These options will only apply to Mobile devices.', 'ashe' ),
'priority' => 50,
'capability' => 'edit_theme_options'
) );
// Merge to Responsive Menu
ashe_checkbox_control( 'main_nav', 'merge_menu', esc_html__( 'Merge Top and Main Menus', 'ashe' ), 'refresh', 1 );
// Featured Slider
ashe_checkbox_control( 'responsive', 'featured_slider', esc_html__( 'Show Featured Slider', 'ashe' ), 'refresh', 3 );
// Featured Links
ashe_checkbox_control( 'responsive', 'featured_links', esc_html__( 'Show Featured Links', 'ashe' ), 'refresh', 5 );
// Related Posts
ashe_checkbox_control( 'responsive', 'related_posts', esc_html__( 'Show Related Posts', 'ashe' ), 'refresh', 7 );
// Mobile Menu Icons Array
$mobile_menu_icons = array(
'chevron-down' => 'Arrow',
'text' => 'Text',
);
// Select Mobile Menu Icon
ashe_select_control( 'responsive', 'menu_icon', esc_html__( 'Select Mobile Menu Icon', 'ashe' ), $mobile_menu_icons, 'refresh', 9 );
// Mobile Menu Text
ashe_text_control( 'responsive', 'mobile_icon_text', esc_html__( 'Menu Button Text', 'ashe' ), 'refresh', 11 );
}
add_action( 'customize_register', 'ashe_customize_register' );
/*
** Bind JS handlers to instantly live-preview changes
*/
function ashe_customize_preview_js() {
wp_enqueue_script( 'ashe-customize-preview', get_theme_file_uri( '/inc/customizer/js/customize-preview.js' ), array( 'customize-preview' ), '1.1', true );
}
add_action( 'customize_preview_init', 'ashe_customize_preview_js' );
/*
** Load dynamic logic for the customizer controls area.
*/
function ashe_panels_js() {
wp_enqueue_style( 'fontawesome', get_theme_file_uri( '/assets/css/fontawesome.min.css' ), [], '6.5.1' );
wp_enqueue_style( 'ashe-customizer-ui-css', get_theme_file_uri( '/inc/customizer/css/customizer-ui.css' ) );
wp_enqueue_script( 'ashe-customize-controls', get_theme_file_uri( '/inc/customizer/js/customize-controls.js' ), array(), '1.2', true );
}
add_action( 'customize_controls_enqueue_scripts', 'ashe_panels_js' );