Пример #1
0
 /**
  * Add postMessage support for site title and description for the Customizer.
  * @param WP_Customize_Manager $wp_customize Customizer object.
  */
 public static function register($wp_customize)
 {
     do_action('powen_customize_starts', $wp_customize);
     /*==============================
         CONTENT
       ===============================*/
     $wp_customize->add_section('powen_content_section', array('title' => __('Content', 'powen'), 'capability' => 'edit_theme_options'));
     //Hide author
     $wp_customize->add_setting('powen_mod[hide_author]', array('capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[hide_author]', array('label' => __('Hide The Author of The Post', 'powen'), 'type' => 'checkbox', 'section' => 'powen_content_section')));
     //Hide date
     $wp_customize->add_setting('powen_mod[hide_date]', array('capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[hide_date]', array('label' => __('Hide The Date of The Post', 'powen'), 'type' => 'checkbox', 'section' => 'powen_content_section')));
     //COPYRIGHT TEXT
     $wp_customize->add_setting('powen_mod[copyright_textbox]', array('default' => __('@copyright', 'powen'), 'sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[copyright_textbox]', array('label' => __('Copyright Text', 'powen'), 'section' => 'powen_content_section', 'settings' => 'powen_mod[copyright_textbox]')));
     //Change Theme Author's Name
     $wp_customize->add_setting('powen_mod[theme_author]', array('default' => __('Supernova Themes', 'powen'), 'sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[theme_author]', array('label' => __("Author's Name", 'powen'), 'section' => 'powen_content_section', 'settings' => 'powen_mod[theme_author]')));
     /*==============================
               MENU TITLES NAV SECTION
       ===============================*/
     $wp_customize->add_setting('powen_mod[menu_one_title_textbox]', array('sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[menu_one_title_textbox]', array('label' => __('Top Most Menu Title', 'powen'), 'section' => 'nav', 'settings' => 'powen_mod[menu_one_title_textbox]')));
     $wp_customize->add_setting('powen_mod[hide_menu_one]', array('capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[hide_menu_one]', array('type' => 'checkbox', 'label' => __('Hide', 'powen'), 'section' => 'nav')));
     $wp_customize->add_setting('powen_mod[menu_two_title_textbox]', array('sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[menu_two_title_textbox]', array('label' => __('Main Menu Title', 'powen'), 'section' => 'nav', 'settings' => 'powen_mod[menu_two_title_textbox]')));
     $wp_customize->add_setting('powen_mod[hide_menu_two]', array('capability' => 'edit_theme_options', 'sanitize_callback' => 'sanitize_text_field'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[hide_menu_two]', array('type' => 'checkbox', 'label' => __('Hide', 'powen'), 'section' => 'nav')));
     /*==============================
                 MEDIA SECTION
       ===============================*/
     $wp_customize->add_section('powen_social_media_section', array('title' => __('Social Media', 'powen'), 'description' => __('Example for Phone url: tel:+13174562564', 'powen'), 'priority' => 50, 'capability' => 'edit_theme_options'));
     $powen_social_sites = powen_customizer_social_media_array();
     foreach ($powen_social_sites as $powen_social_site) {
         $wp_customize->add_setting("powen_mod[{$powen_social_site}]", array('sanitize_callback' => 'esc_url_raw', 'capability' => 'edit_theme_options'));
         $wp_customize->add_control("powen_mod[{$powen_social_site}]", array('label' => sprintf(__("%s url:", 'powen'), $powen_social_site), 'settings' => "powen_mod[{$powen_social_site}]", 'section' => 'powen_social_media_section', 'type' => 'text', 'priority' => 10));
     }
     /*==============================
                 SIDEBAR LAYOUT
       ===============================*/
     $wp_customize->add_section('powen_sidebar_layout_section', array('title' => __('Sidebar Layout', 'powen'), 'capability' => 'edit_theme_options'));
     $wp_customize->add_setting('powen_mod[sidebar_position]', array('default' => 'right', 'sanitize_callback' => 'powen_sanitize_choices', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[sidebar_position]', array('label' => __('Sidebar Position', 'powen'), 'type' => 'radio', 'choices' => array('left' => __('left', 'powen'), 'right' => __('right', 'powen'), 'no-sidebar' => __('no-sidebar', 'powen')), 'section' => 'powen_sidebar_layout_section', 'settings' => 'powen_mod[sidebar_position]')));
     /*==============================
                 SLIDER
       ===============================*/
     global $powen_theme;
     $url = $powen_theme->get('AuthorURI') . "/powen-pro-pricing/";
     $description = !defined('POWEN_PRO') ? __('For More Options Upgrade to ', 'powen') . "<a href='{$url}'>" . __('Powen Pro', 'powen') . "</a>" : false;
     $wp_customize->add_panel('powen_slider_pannel', array('priority' => 10, 'capability' => 'edit_theme_options', 'title' => __('Slider Options', 'powen'), 'description' => __('Add slider', 'powen')));
     $wp_customize->add_section('powen_slider_section_pro', array('priority' => 9, 'capability' => 'edit_theme_options', 'title' => __('Powen Pro', 'powen'), 'description' => $description, 'type' => 'checkbox', 'panel' => 'powen_slider_pannel'));
     $wp_customize->add_setting('powen_mod[hide_slider]', array('default' => 0, 'sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Control($wp_customize, 'powen_mod[hide_slider]', array('label' => __('Hide Slider', 'powen'), 'type' => 'checkbox', 'section' => 'powen_slider_section_pro')));
     $default_slides = powen_default_slides();
     for ($i = 0; $i <= apply_filters('powen_increase_slides', 19); $i++) {
         $wp_customize->add_section('powen_slider_section_' . $i, array('priority' => 10, 'capability' => 'edit_theme_options', 'title' => sprintf(__('Slide %s', 'powen'), $i + 1), 'description' => __('Add slide', 'powen'), 'panel' => 'powen_slider_pannel'));
         $wp_customize->add_setting('powen_slides[' . $i . '][title]', array('default' => isset($default_slides[$i]['title']) ? $default_slides[$i]['title'] : false, 'sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
         $wp_customize->add_control('powen_slides[' . $i . '][title]', array('priority' => 10, 'section' => 'powen_slider_section_' . $i, 'label' => __('Title', 'powen'), 'settings' => 'powen_slides[' . $i . '][title]'));
         $wp_customize->add_setting('powen_slides[' . $i . '][description]', array('default' => isset($default_slides[$i]['description']) ? $default_slides[$i]['description'] : false, 'sanitize_callback' => 'sanitize_text_field', 'capability' => 'edit_theme_options'));
         $wp_customize->add_control('powen_slides[' . $i . '][description]', array('priority' => 10, 'section' => 'powen_slider_section_' . $i, 'label' => __('Description', 'powen'), 'settings' => 'powen_slides[' . $i . '][description]'));
         $wp_customize->add_setting('powen_slides[' . $i . '][link]', array('default' => isset($default_slides[$i]['link']) ? esc_url($default_slides[$i]['link']) : false, 'sanitize_callback' => 'esc_url_raw', 'capability' => 'edit_theme_options'));
         $wp_customize->add_control('powen_slides[' . $i . '][link]', array('priority' => 10, 'section' => 'powen_slider_section_' . $i, 'label' => __('Link', 'powen'), 'settings' => 'powen_slides[' . $i . '][link]'));
         $wp_customize->add_setting('powen_slides[' . $i . '][image]', array('default' => isset($default_slides[$i]['image']) ? esc_url($default_slides[$i]['image']) : false, 'sanitize_callback' => 'esc_url_raw', 'capability' => 'edit_theme_options'));
         $wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'powen_slides[' . $i . '][image]', array('priority' => 10, 'section' => 'powen_slider_section_' . $i, 'label' => __('Image', 'powen'), 'description' => __('(Minimum image size 337 x 225)', 'powen'), 'settings' => 'powen_slides[' . $i . '][image]')));
     }
     /*==============================
                 COLORS
       ===============================*/
     $theme_colors = apply_filters('powen_theme_colors_array', array(array('slug' => 'powen_mod[theme_color]', 'default' => '#daa520', 'label' => __('Theme Color', 'powen')), array('slug' => 'powen_mod[hover_link_color]', 'default' => '#dd9933', 'label' => __('Link Color (on hover)', 'powen')), array('slug' => 'powen_mod[header_textcolor]', 'default' => '#000', 'label' => __('Site Title Color', 'powen')), array('slug' => 'powen_mod[header_taglinecolor]', 'default' => '#222222', 'label' => __('Site Tagline Color', 'powen')), array('slug' => 'powen_mod[header_background]', 'default' => '#ffffff', 'label' => __('Header Background Color', 'powen')), array('slug' => 'powen_mod[powen-footer-widgets_background]', 'default' => '#222222', 'label' => __('Footer widgets background color', 'powen')), array('slug' => 'powen_mod[powen-footer-widgets_textcolor]', 'default' => '#808080', 'label' => __('Footer widgets text color', 'powen')), array('slug' => 'powen_mod[powen-footer-widgets_linkcolor]', 'default' => '#cccccc', 'label' => __('Footer widgets link color', 'powen')), array('slug' => 'powen_mod[footer_bottom_background_color]', 'default' => '#000000', 'label' => __('Footer bottom background color', 'powen')), array('slug' => 'powen_mod[footer_bottom_textcolor]', 'default' => '#999999', 'label' => __('Footer bottom text color', 'powen'))));
     foreach ($theme_colors as $theme_color) {
         $wp_customize->add_setting($theme_color['slug'], array('default' => $theme_color['default'], 'sanitize_callback' => 'sanitize_hex_color', 'capability' => 'edit_theme_options'));
         $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, $theme_color['slug'], array('label' => $theme_color['label'], 'section' => 'colors', 'settings' => $theme_color['slug'])));
     }
     //Theme Font
     $wp_customize->add_section('powen_font_section', array('title' => __('Theme Font', 'powen'), 'capability' => 'edit_theme_options'));
     $wp_customize->add_setting('powen_mod[theme_font]', array('default' => 'Open Sans', 'sanitize_callback' => 'powen_sanitize_choices', 'transport' => 'postMessage', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control('powen_mod[theme_font]', array('section' => 'powen_font_section', 'label' => __('Theme Font', 'powen'), 'type' => 'select', 'settings' => 'powen_mod[theme_font]', 'choices' => array('sansserif' => 'sans-serif', 'serif' => 'serif', 'courier' => 'Courier New', 'open-sans' => 'Open Sans')));
     /*==============================
               SITE TITLE PLACEMENT
       ===============================*/
     //Site Title & Tagline Placement
     $wp_customize->add_setting('powen_mod[header_text_placement]', array('default' => 'center', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'powen_sanitize_choices'));
     $wp_customize->add_control('powen_mod[header_text_placement]', array('type' => 'radio', 'label' => __('Site Title & Tagline Placement', 'powen'), 'section' => 'title_tagline', 'settings' => 'powen_mod[header_text_placement]', 'choices' => array('left' => __('left', 'powen'), 'right' => __('right', 'powen'), 'center' => __('center', 'powen'))));
     /*==============================
               LOGO & FAVICON
       ===============================*/
     //Upload logo
     $wp_customize->add_setting('powen_mod[upload_logo]', array('sanitize_callback' => 'esc_url_raw', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'powen_mod[upload_logo]', array('label' => __('Upload logo', 'powen'), 'section' => 'title_tagline', 'settings' => 'powen_mod[upload_logo]')));
     //Logo placement
     $wp_customize->add_setting('powen_mod[logo_placement]', array('default' => 'left', 'sanitize_callback' => 'powen_sanitize_choices', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control('powen_mod[logo_placement]', array('type' => 'radio', 'label' => __('Logo placement', 'powen'), 'section' => 'title_tagline', 'settings' => 'powen_mod[logo_placement]', 'choices' => array('left' => __('left', 'powen'), 'right' => __('right', 'powen'), 'center' => __('center', 'powen'))));
     $wp_customize->add_setting('powen_mod[theme_favicon]', array('sanitize_callback' => 'esc_url_raw', 'capability' => 'edit_theme_options'));
     $wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'powen_mod[theme_favicon]', array('label' => __('Upload Favicon', 'powen'), 'section' => 'title_tagline', 'settings' => 'powen_mod[theme_favicon]')));
     // We can also change built-in settings by modifying properties. For instance, let's make some stuff use live preview JS...
     $wp_customize->get_setting('blogname')->transport = 'postMessage';
     $wp_customize->get_setting('blogdescription')->transport = 'postMessage';
     do_action('powen_customize_ends', $wp_customize);
 }
Пример #2
0
<?php 
/**
 * Tempate part used in index.php for showing flexslider
 * @package powen
 */
$slides = get_theme_mod('powen_slides', powen_default_slides());
?>

<?php 
if (!powen_mod('hide_slider', false)) {
    ?>
<div id="powen-main-slider" class="clear">
	<section id="slider" class="flexslider">
		<ul class='slides'>

		<?php 
    if (is_array($slides)) {
        foreach ($slides as $slide) {
            ?>

			<?php 
            if (!trim($slide['image'])) {
                continue;
            }
            ?>
			<li>
				<a href='<?php 
            echo esc_url($slide['link']);
            ?>
'>