register_section_type( Audio_Player_Button::class );
$manager->add_section(
new Audio_Player_Button( $manager, 'audio_player_pro', [
'title' => esc_html( AUDIO_PLAYER_TEXT,'audio-player' ),
'priority' => 0,
'button_text' => __( 'GET PREMIUM', 'audio-player' ),
'button_url' => esc_url( AUDIO_PLAYER_URL )
] )
);
} );
// Load the JS and CSS.
add_action( 'customize_controls_enqueue_scripts', function() {
$version = wp_get_theme()->get( 'Version' );
wp_enqueue_script(
'audio-player-customize-section-button',
get_theme_file_uri( 'vendor/wptrt/customize-section-button/public/js/customize-controls.js' ),
[ 'customize-controls' ],
$version,
true
);
wp_enqueue_style(
'audio-player-customize-section-button',
get_theme_file_uri( 'vendor/wptrt/customize-section-button/public/css/customize-controls.css' ),
[ 'customize-controls' ],
$version
);
} );
/**
* Add postMessage support for site title and description for the Theme Customizer.
*
* @param WP_Customize_Manager $wp_customize Theme Customizer object.
*/
function audio_player_customize_register($wp_customize){
// Pro Version
class Audio_Player_Customize_Pro_Version extends WP_Customize_Control {
public $type = 'pro_options';
public function render_content() {
echo 'For More '. esc_html( $this->label ) .'?';
echo '';
echo '';
echo ' '. esc_html( AUDIO_PLAYER_BUY_TEXT,'audio-player' ) .'';
echo '';
}
}
// Custom Controls
function Audio_Player_sanitize_custom_control( $input ) {
return $input;
}
$wp_customize->get_setting('blogname')->transport = 'postMessage';
$wp_customize->get_setting('blogdescription')->transport = 'postMessage';
// General Settings
$wp_customize->add_section('audio_player_general_settings',array(
'title' => esc_html__('General Settings','audio-player'),
'priority' => 30,
));
$wp_customize->add_setting('audio_player_preloader_hide', array(
'default' => 0,
'sanitize_callback' => 'audio_player_sanitize_checkbox'
));
$wp_customize->add_control( new WP_Customize_Control($wp_customize,'audio_player_preloader_hide',array(
'label' => __( 'Show Theme Preloader', 'audio-player' ),
'section' => 'audio_player_general_settings',
'settings' => 'audio_player_preloader_hide',
'type' => 'checkbox',
)));
// Social Link
$wp_customize->add_section('audio_player_social_link',array(
'title' => esc_html__('Social Links','audio-player'),
));
$wp_customize->add_setting('audio_player_facebook_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_facebook_icon',array(
'label' => esc_html__('Facebook Icon','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_facebook_icon',
'type' => 'text',
'default' => 'fab fa-facebook-f',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-facebook-f','audio-player')
));
$wp_customize->add_setting('audio_player_facebook_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('audio_player_facebook_url',array(
'label' => esc_html__('Facebook Link','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_facebook_url',
'type' => 'url'
));
$wp_customize->add_setting('audio_player_twitter_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_twitter_icon',array(
'label' => esc_html__('Twitter Icon','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_twitter_icon',
'type' => 'text',
'default' => 'fab fa-twitter',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-twitter','audio-player')
));
$wp_customize->add_setting('audio_player_twitter_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('audio_player_twitter_url',array(
'label' => esc_html__('Twitter Link','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_twitter_url',
'type' => 'url'
));
$wp_customize->add_setting('audio_player_intagram_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_intagram_icon',array(
'label' => esc_html__('Intagram Icon','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_intagram_icon',
'type' => 'text',
'default' => 'fab fa-instagram',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-instagram','audio-player')
));
$wp_customize->add_setting('audio_player_intagram_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('audio_player_intagram_url',array(
'label' => esc_html__('Intagram Link','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_intagram_url',
'type' => 'url'
));
$wp_customize->add_setting('audio_player_linkedin_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_linkedin_icon',array(
'label' => esc_html__('Linkedin Icon','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_linkedin_icon',
'type' => 'text',
'default' => 'fab fa-linkedin-in',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-linkedin-in','audio-player')
));
$wp_customize->add_setting('audio_player_linkedin_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('audio_player_linkedin_url',array(
'label' => esc_html__('Linkedin Link','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_linkedin_url',
'type' => 'url'
));
$wp_customize->add_setting('audio_player_pintrest_icon',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_pintrest_icon',array(
'label' => esc_html__('Pinterest Icon','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_pintrest_icon',
'type' => 'text',
'default' => 'fab fa-pinterest-p',
'description' => __('Select font awesome icons Click Here for select icon. for eg:-fab fa-pinterest-p','audio-player')
));
$wp_customize->add_setting('audio_player_pintrest_url',array(
'default' => '',
'sanitize_callback' => 'esc_url_raw'
));
$wp_customize->add_control('audio_player_pintrest_url',array(
'label' => esc_html__('Pinterest Link','audio-player'),
'section' => 'audio_player_social_link',
'setting' => 'audio_player_pintrest_url',
'type' => 'url'
));
// Pro Version
$wp_customize->add_setting( 'pro_version_social_setting', array(
'sanitize_callback' => 'Audio_Player_sanitize_custom_control'
));
$wp_customize->add_control( new Audio_Player_Customize_Pro_Version ( $wp_customize,'pro_version_social_setting', array(
'section' => 'audio_player_social_link',
'type' => 'pro_options',
'label' => esc_html__( 'Customizer Options', 'audio-player' ),
'description' => esc_url( AUDIO_PLAYER_URL ),
'priority' => 100
)));
//TopBar
$wp_customize->add_section('audio_player_topbar',array(
'title' => esc_html__('Topbar Option','audio-player')
));
$wp_customize->add_setting('audio_player_topbar_register_button',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_topbar_register_button',array(
'label' => esc_html__('Register Button','audio-player'),
'section' => 'audio_player_topbar',
'setting' => 'audio_player_topbar_register_button',
'type' => 'text'
));
$wp_customize->add_setting('audio_player_topbar_register_button_url',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_topbar_register_button_url',array(
'label' => esc_html__('Register Button Url','audio-player'),
'section' => 'audio_player_topbar',
'setting' => 'audio_player_topbar_register_button_url',
'type' => 'text'
));
// Pro Version
$wp_customize->add_setting( 'pro_version_topbar_setting', array(
'sanitize_callback' => 'Audio_Player_sanitize_custom_control'
));
$wp_customize->add_control( new Audio_Player_Customize_Pro_Version ( $wp_customize,'pro_version_topbar_setting', array(
'section' => 'audio_player_topbar',
'type' => 'pro_options',
'label' => esc_html__( 'Customizer Options', 'audio-player' ),
'description' => esc_url( AUDIO_PLAYER_URL ),
'priority' => 100
)));
//Slider
$wp_customize->add_section('audio_player_top_slider',array(
'title' => esc_html__('Slider Settings','audio-player'),
'description' => esc_html__('Here you have to add 3 different pages in below dropdown. Note: Image Dimensions 1400 x 550 px','audio-player')
));
$wp_customize->add_setting('audio_player_slider_heading',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_slider_heading',array(
'label' => esc_html__('Slider Heading','audio-player'),
'section' => 'audio_player_top_slider',
'setting' => 'audio_player_slider_heading',
'type' => 'text'
));
for ( $audio_player_count = 1; $audio_player_count <= 3; $audio_player_count++ ) {
$wp_customize->add_setting( 'audio_player_top_slider_page' . $audio_player_count, array(
'default' => '',
'sanitize_callback' => 'audio_player_sanitize_dropdown_pages'
) );
$wp_customize->add_control( 'audio_player_top_slider_page' . $audio_player_count, array(
'label' => __( 'Select Slide Page', 'audio-player' ),
'section' => 'audio_player_top_slider',
'type' => 'dropdown-pages'
) );
}
$wp_customize->add_setting('audio_player_player_shortcode',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_player_shortcode',array(
'label' => __('Player Shortcode','audio-player'),
'section' => 'audio_player_top_slider',
'setting' => 'audio_player_player_shortcode',
'type' => 'text'
));
// Pro Version
$wp_customize->add_setting( 'pro_version_slider_setting', array(
'sanitize_callback' => 'Audio_Player_sanitize_custom_control'
));
$wp_customize->add_control( new Audio_Player_Customize_Pro_Version ( $wp_customize,'pro_version_slider_setting', array(
'section' => 'audio_player_top_slider',
'type' => 'pro_options',
'label' => esc_html__( 'Customizer Options', 'audio-player' ),
'description' => esc_url( AUDIO_PLAYER_URL ),
'priority' => 100
)));
// Our Feature
$wp_customize->add_section('audio_player_feature_section',array(
'title' => esc_html__('Feature Option','audio-player'),
'description' => esc_html__('Here you have to select category which will display Feature in the home page.','audio-player')
));
$wp_customize->add_setting('audio_player_feature_long_heading',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_feature_long_heading',array(
'label' => esc_html__('Main Heading','audio-player'),
'section' => 'audio_player_feature_section',
'setting' => 'audio_player_feature_long_heading',
'type' => 'text'
));
$wp_customize->add_setting('audio_player_feature_short_heading',array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field'
));
$wp_customize->add_control('audio_player_feature_short_heading',array(
'label' => esc_html__('Short Heading','audio-player'),
'section' => 'audio_player_feature_section',
'setting' => 'audio_player_feature_short_heading',
'type' => 'text'
));
$categories = get_categories();
$cat_post = array();
$cat_post[]= 'select';
$i = 0;
foreach($categories as $category){
if($i==0){
$default = $category->slug;
$i++;
}
$cat_post[$category->slug] = $category->name;
}
$wp_customize->add_setting('audio_player_feature_sec_category',array(
'default' => 'select',
'sanitize_callback' => 'audio_player_sanitize_select',
));
$wp_customize->add_control('audio_player_feature_sec_category',array(
'type' => 'select',
'choices' => $cat_post,
'label' => __('Select Category to display services','audio-player'),
'section' => 'audio_player_feature_section',
));
// Pro Version
$wp_customize->add_setting( 'pro_version_features_setting', array(
'sanitize_callback' => 'Audio_Player_sanitize_custom_control'
));
$wp_customize->add_control( new Audio_Player_Customize_Pro_Version ( $wp_customize,'pro_version_features_setting', array(
'section' => 'audio_player_feature_section',
'type' => 'pro_options',
'label' => esc_html__( 'Customizer Options', 'audio-player' ),
'description' => esc_url( AUDIO_PLAYER_URL ),
'priority' => 100
)));
// Footer
$wp_customize->add_section('audio_player_site_footer_section', array(
'title' => esc_html__('Footer', 'audio-player'),
));
$wp_customize->add_setting('audio_player_footer_text_setting', array(
'sanitize_callback' => 'sanitize_text_field',
));
$wp_customize->add_control('audio_player_footer_text_setting', array(
'label' => __('Replace the footer text', 'audio-player'),
'section' => 'audio_player_site_footer_section',
'priority' => 1,
'type' => 'text',
));
// Pro Version
$wp_customize->add_setting( 'pro_version_footer_setting', array(
'sanitize_callback' => 'Audio_Player_sanitize_custom_control'
));
$wp_customize->add_control( new Audio_Player_Customize_Pro_Version ( $wp_customize,'pro_version_footer_setting', array(
'section' => 'audio_player_site_footer_section',
'type' => 'pro_options',
'label' => esc_html__( 'Customizer Options', 'audio-player' ),
'description' => esc_url( AUDIO_PLAYER_URL ),
'priority' => 100
)));
}
add_action('customize_register', 'audio_player_customize_register');
/**
* Render the site title for the selective refresh partial.
*
* @return void
*/
function audio_player_customize_partial_blogname(){
bloginfo('name');
}
/**
* Render the site tagline for the selective refresh partial.
*
* @return void
*/
function audio_player_customize_partial_blogdescription(){
bloginfo('description');
}
/**
* Binds JS handlers to make Theme Customizer preview reload changes asynchronously.
*/
function audio_player_customize_preview_js(){
wp_enqueue_script('audio-player-customizer', esc_url(get_template_directory_uri()) . '/assets/js/customizer.js', array('customize-preview'), '20151215', true);
}
add_action('customize_preview_init', 'audio_player_customize_preview_js');
/*
** Load dynamic logic for the customizer controls area.
*/
function audio_player_panels_js() {
wp_enqueue_style( 'audio-player-customizer-layout-css', get_theme_file_uri( '/assets/css/customizer-layout.css' ) );
wp_enqueue_script( 'audio-player-customize-layout', get_theme_file_uri( '/assets/js/customize-layout.js' ), array(), '1.2', true );
}
add_action( 'customize_controls_enqueue_scripts', 'audio_player_panels_js' );