$category ) {
$cats[$category->term_id] = $category->name;
}
return $cats;
}
function mywiki_sanitize_category( $input )
{
$valid = mywiki_cats();
foreach ($input as $value) {
if ( !array_key_exists( $value, $valid ) ) {
return array();
}
}
return $input;
}
if ( class_exists( 'WP_Customize_Control' ) ) {
class MyWiki_Customize_Control_Multiple_Select extends WP_Customize_Control {
/**
* The type of customize control being rendered.
*/
public $type = 'multiple-select';
/**
* Displays the multiple select on the customize screen.
*/
public function render_content() {
if ( empty( $this->choices ) )
return;
?>
manager->get_control( $setting->id )->choices;
// If the input is a valid key, return it; otherwise, return the default.
return ( array_key_exists( $input, $choices ) ? $input : $setting->default );
}
function mywiki_customize_register( $wp_customize ) {
$mywiki_options = get_option( 'faster_theme_options' );
$wp_customize->add_panel(
'general',
array(
'title' => __( 'General', 'mywiki' ),
'description' => __('styling options','mywiki'),
'priority' => 20,
)
);
$wp_customize->get_section('title_tagline')->panel = 'general';
$wp_customize->get_section('static_front_page')->panel = 'general';
$wp_customize->get_section('header_image')->panel = 'general';
$wp_customize->get_section('title_tagline')->title = __('Header & Logo','mywiki');
/*-------------------- Home Page Option Setting --------------------------*/
$wp_customize->add_section( 'frontpage_options_section' ,
array(
'title' => __( 'Front Page : Options', 'mywiki' ),
'priority' => 32,
'capability' => 'edit_theme_options',
)
);
$wp_customize->add_setting( 'mywiki_category_list',
array(
'default' => 0,
'transport' => 'refresh',
'sanitize_callback' => 'mywiki_sanitize_category'
)
);
$wp_customize->add_control(
new MyWiki_Customize_Control_Multiple_Select (
$wp_customize,
'mywiki_category_list',
array(
'settings' => 'mywiki_category_list',
'label' => 'Featured category',
'section' => 'frontpage_options_section', // Enter the name of your own section
'type' => 'multiple-select', // The $type in our class
'choices' => mywiki_cats()
)
)
);
$wp_customize->add_setting( 'mywiki_category_count',
array(
'capability' => 'edit_theme_options',
'sanitize_callback' => 'absint',
'priority' => 20,
)
);
$wp_customize->add_control( 'mywiki_category_count',
array(
'default' => 1,
'section' => 'frontpage_options_section',
'label' => __('Number of posts to show: ','mywiki'),
'type' => 'number',
'input_attrs' => array( 'placeholder' => esc_html__('Enter Number of post','mywiki')),
)
);
$wp_customize->add_setting( 'mywiki_category_count',
array(
'capability' => 'edit_theme_options',
'sanitize_callback' => 'absint',
'priority' => 20,
'default' => 1,
)
);
$wp_customize->add_control( 'mywiki_category_count',
array(
'section' => 'frontpage_options_section',
'label' => __('Number of posts to show: ','mywiki'),
'type' => 'number',
'input_attrs' => array( 'placeholder' => esc_html__('Enter Number of post','mywiki')),
)
);
$wp_customize->add_setting( 'mywiki_category_title',
array(
'capability' => 'edit_theme_options',
'sanitize_callback' => 'sanitize_text_field',
'priority' => 20,
'default' => esc_html__('Knowledgebase Categories','mywiki'),
)
);
$wp_customize->add_control( 'mywiki_category_title',
array(
'section' => 'frontpage_options_section',
'label' => __('Category Header Title : ','mywiki'),
'type' => 'text',
'input_attrs' => array( 'placeholder' => esc_html__('Enter Title like Knowledgebase Categories','mywiki')),
)
);
$wp_customize->add_setting( 'mywiki_category_icon',
array(
'capability' => 'edit_theme_options',
'sanitize_callback' => 'sanitize_text_field',
'priority' => 20,
'default' => 'fa-list-alt',
)
);
$wp_customize->add_control( 'mywiki_category_icon',
array(
'section' => 'frontpage_options_section',
'label' => __('Category Icon : ','mywiki'),
'description' => __( 'In input box, you need to add FONT AWESOME shortcode which you can find ' , 'mywiki').''.__('here' , 'mywiki').'',
'type' => 'text',
'input_attrs' => array( 'placeholder' => esc_html__('Enter Font Awesome Icon','mywiki')),
)
);
$wp_customize->add_setting( 'mywiki_category_post_icon',
array(
'capability' => 'edit_theme_options',
'sanitize_callback' => 'sanitize_text_field',
'priority' => 20,
'default' => 'fa-file-text-o',
)
);
$wp_customize->add_control( 'mywiki_category_post_icon',
array(
'section' => 'frontpage_options_section',
'label' => __('Category Post List Icon : ','mywiki'),
'description' => __( 'In input box, you need to add FONT AWESOME shortcode which you can find ' , 'mywiki').''.__('here' , 'mywiki').'',
'type' => 'text',
'input_attrs' => array( 'placeholder' => esc_html__('Enter Font Awesome Icon','mywiki')),
)
);
//Footer Section
$wp_customize->add_panel(
'footer',
array(
'title' => __( 'Footer', 'mywiki' ),
'description' => __('Footer options','mywiki'),
'priority' => 200,
)
);
$wp_customize->add_section( 'footerCopyright' , array(
'title' => __( 'Footer', 'mywiki' ),
'priority' => 100,
'capability' => 'edit_theme_options',
'panel' => 'footer'
) );
$wp_customize->add_setting(
'footertext',
array(
'default' => $mywiki_options['footertext'],
'capability' => 'edit_theme_options',
'sanitize_callback' => 'wp_kses_post',
'priority' => 20,
)
);
$wp_customize->add_control(
'footertext',
array(
'section' => 'footerCopyright',
'label' => __('Enter Copyright Text','mywiki'),
'type' => 'textarea',
)
);
$wp_customize->add_section(
'footer_social_links',
array(
'title' => __('Footer Social Accounts', 'mywiki'),
'priority' => 120,
'description' => __( 'In first input box, you need to add FONT AWESOME shortcode which you can find ' , 'mywiki').''.__('here' , 'mywiki').''.__(' and in second input box, you need to add your social media profile URL.', 'mywiki').'
'.__(' Enter the URL of your social accounts. Leave it empty to hide the icon.' , 'mywiki'),
'panel' => 'footer'
)
);
$footer_social_icon_default = array(
array('url'=>$mywiki_options['fburl'],'icon'=>'fa-facebook'),
array('url'=>$mywiki_options['twitter'],'icon'=>'fa-twitter'),
array('url'=>$mywiki_options['googleplus'],'icon'=>'fa-google-plus'),
array('url'=>$mywiki_options['linkedin'],'icon'=>'fa-linkedin'),
);
$footer_social_icon_link = array();
for($i=1;$i <= 4;$i++):
$footer_social_icon[] = array( 'slug'=>sprintf('footer_social_icon%d',$i),
'default' => $footer_social_icon_default[$i-1]['icon'],
'label' => esc_html__( 'Social Account ', 'mywiki') .$i,
'priority' => sprintf('%d',$i) );
endfor;
foreach($footer_social_icon as $footer_social_icons){
$wp_customize->add_setting(
$footer_social_icons['slug'],
array(
'default' => $footer_social_icons['default'],
'capability' => 'edit_theme_options',
'type' => 'theme_mod',
'sanitize_callback' => 'sanitize_text_field',
)
);
$wp_customize->add_control(
$footer_social_icons['slug'],
array(
'type' => 'text',
'section' => 'footer_social_links',
'input_attrs' => array( 'placeholder' => esc_attr__('Enter Icon','mywiki') ),
'label' => $footer_social_icons['label'],
'priority' => $footer_social_icons['priority']
)
);
}
$footer_social_icon_link = array();
for($i=1;$i <= 4;$i++):
$footer_social_icon_link[] = array( 'slug'=>sprintf('footer_social_icon_link%d',$i),
'default' => $footer_social_icon_default[$i-1]['url'],
'label' => esc_html__( 'Social Link ', 'mywiki' ) .$i,
'priority' => sprintf('%d',$i) );
endfor;
foreach($footer_social_icon_link as $footer_social_icon_links){
$wp_customize->add_setting(
$footer_social_icon_links['slug'],
array(
'default' => $footer_social_icon_links['default'],
'capability' => 'edit_theme_options',
'type' => 'theme_mod',
'sanitize_callback' => 'esc_url_raw',
)
);
$wp_customize->add_control(
$footer_social_icon_links['slug'],
array(
'type' => 'text',
'section' => 'footer_social_links',
'priority' => $footer_social_icon_links['priority'],
'input_attrs' => array( 'placeholder' => esc_html__('Enter URL','mywiki')),
)
);
}
// Text Panel Starts Here
}
add_action( 'customize_register', 'mywiki_customize_register' );