__( 'Primary Menu', 'ffengshui' ),
'footer' => __( 'Footer Menu', 'ffengshui' ),
) );
/*
* Switch default core markup for search form, comment form, and comments
* to output valid HTML5.
*/
add_theme_support( 'html5', array(
'comment-form',
'comment-list',
'gallery',
'caption',
) );
// add the visual editor to resemble the theme style
add_editor_style( array( 'css/editor-style.css', get_template_directory_uri() . '/style.css' ) );
// add custom background
add_theme_support( 'custom-background',
array ('default-color' => '#FFFFFF')
);
// add content width
global $content_width;
if ( ! isset( $content_width ) ) {
$content_width = 900;
}
// add custom header
add_theme_support( 'custom-header', array (
'default-image' => '',
'random-default' => '',
'flex-height' => true,
'flex-width' => true,
'uploads' => true,
'width' => 900,
'height' => 100,
'default-text-color' => '#000000',
'wp-head-callback' => 'ffengshui_header_style',
) );
// add custom logo
add_theme_support( 'custom-logo', array (
'width' => 145,
'height' => 36,
'flex-height' => true,
'flex-width' => true,
) );
}
endif; // ffengshui_setup
add_action( 'after_setup_theme', 'ffengshui_setup' );
/**
* the main function to load scripts in the fFengShui theme
* if you add a new load of script, style, etc. you can use that function
* instead of adding a new wp_enqueue_scripts action for it.
*/
function ffengshui_load_scripts() {
// load styles.
wp_enqueue_style( 'font-awesome', get_template_directory_uri() . '/css/font-awesome.min.css', array() );
wp_enqueue_style( 'animate-css', get_template_directory_uri() . '/css/animate.css', array( ) );
wp_enqueue_style( 'ffengshui-style', get_stylesheet_uri(), array() );
wp_enqueue_style( 'ffengshui-fonts', ffengshui_fonts_url(), array(), null );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
wp_enqueue_script( 'viewportchecker', get_template_directory_uri() . '/js/viewportchecker.js',
array( 'jquery' ) );
// Load Utilities JS Script
wp_enqueue_script( 'bjqs', get_template_directory_uri() . '/js/bjqs-1.3.min.js', array( 'jquery' ) );
wp_enqueue_script( 'ffengshui-js', get_template_directory_uri() . '/js/utilities.js', array( 'jquery', 'viewportchecker' ) );
$data = array(
'loading_effect' => ( get_theme_mod('ffengshui_animations_display', 1) == 1 ),
);
wp_localize_script('ffengshui-js', 'ffengshui_options', $data);
}
add_action( 'wp_enqueue_scripts', 'ffengshui_load_scripts' );
/**
* Load google font url used in the fFengShui theme
*/
function ffengshui_fonts_url() {
$fonts_url = '';
/* Translators: If there are characters in your language that are not
* supported by PT Sans, translate this to 'off'. Do not translate
* into your own language.
*/
$ptsans = _x( 'on', 'PT Sans font: on or off', 'ffengshui' );
if ( 'off' !== $ptsans ) {
$font_families = array();
$font_families[] = 'PT Sans';
$query_args = array(
'family' => urlencode( implode( '|', $font_families ) ),
'subset' => urlencode( 'latin,cyrillic-ext,cyrillic,latin-ext' ),
);
$fonts_url = add_query_arg( $query_args, '//fonts.googleapis.com/css' );
}
return $fonts_url;
}
/**
* Display website's logo image
*/
function ffengshui_show_website_logo_image_and_title() {
if ( has_custom_logo() ) {
the_custom_logo();
}
$header_text_color = get_header_textcolor();
if ( 'blank' !== $header_text_color ) {
echo '
';
}
}
/**
* Displays the copyright text.
*/
function ffengshui_show_copyright_text() {
$footerText = get_theme_mod('ffengshui_footer_copyright', null);
if ( !empty( $footerText ) ) {
echo esc_html( $footerText ) . ' | ';
}
}
/**
* widgets-init action handler. Used to register widgets and register widget areas
*/
function ffengshui_widgets_init() {
// Register Sidebar Widget.
register_sidebar( array (
'name' => __( 'Sidebar Widget Area', 'ffengshui'),
'id' => 'sidebar-widget-area',
'description' => __( 'The sidebar widget area', 'ffengshui'),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
) );
/**
* Add Homepage Columns Widget areas
*/
register_sidebar( array (
'name' => __( 'Homepage Column #1', 'ffengshui' ),
'id' => 'homepage-column-1-widget-area',
'description' => __( 'The Homepage Column #1 widget area', 'ffengshui' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
) );
register_sidebar( array (
'name' => __( 'Homepage Column #2', 'ffengshui' ),
'id' => 'homepage-column-2-widget-area',
'description' => __( 'The Homepage Column #2 widget area', 'ffengshui' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
) );
// Register Footer Column #1
register_sidebar( array (
'name' => __( 'Footer Column #1', 'ffengshui' ),
'id' => 'footer-column-1-widget-area',
'description' => __( 'The Footer Column #1 widget area', 'ffengshui' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
) );
// Register Footer Column #2
register_sidebar( array (
'name' => __( 'Footer Column #2', 'ffengshui' ),
'id' => 'footer-column-2-widget-area',
'description' => __( 'The Footer Column #2 widget area', 'ffengshui' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
) );
// Register Footer Column #3
register_sidebar( array (
'name' => __( 'Footer Column #3', 'ffengshui' ),
'id' => 'footer-column-3-widget-area',
'description' => __( 'The Footer Column #3 widget area', 'ffengshui' ),
'before_widget' => '',
'after_widget' => '',
'before_title' => '',
) );
}
add_action( 'widgets_init', 'ffengshui_widgets_init' );
/**
* Displays the slider
*/
function ffengshui_display_slider() { ?>
add_section(
'ffengshui_slider_section',
array(
'title' => __( 'Slider', 'ffengshui' ),
'capability' => 'edit_theme_options',
)
);
// Add display slider option
$wp_customize->add_setting(
'ffengshui_slider_display',
array(
'default' => 0,
'sanitize_callback' => 'esc_attr',
)
);
$wp_customize->add_control( new WP_Customize_Control( $wp_customize, 'ffengshui_slider_display',
array(
'label' => __( 'Display Slider', 'ffengshui' ),
'section' => 'ffengshui_slider_section',
'settings' => 'ffengshui_slider_display',
'type' => 'checkbox',
)
)
);
for ( $i = 1; $i <= 3; ++$i ) {
$slideContentId = 'ffengshui_slide' . $i . '_title';
$slideImageId = 'ffengshui_slide' . $i . '_image';
$slideDefaultImagePath = get_template_directory_uri().'/images/slider/' . $i . '.jpg';
/* translators: %s: slide number */
$slideLabelImage = sprintf( esc_html__( 'Slide #%s Image', 'ffengshui' ), $i );
// Add slide # background image
$wp_customize->add_setting( $slideImageId,
array(
'default' => $slideDefaultImagePath,
'sanitize_callback' => 'esc_url_raw'
)
);
$wp_customize->add_control( new WP_Customize_Image_Control( $wp_customize, $slideImageId,
array(
'label' => $slideLabelImage,
'section' => 'ffengshui_slider_section',
'settings' => $slideImageId,
)
)
);
}
/**
* Add Footer Section
*/
$wp_customize->add_section(
'ffengshui_footer_section',
array(
'title' => __( 'Footer', 'ffengshui' ),
'capability' => 'edit_theme_options',
)
);
// Add footer copyright text
$wp_customize->add_setting(
'ffengshui_footer_copyright',
array(
'default' => '',
'sanitize_callback' => 'sanitize_text_field',
)
);
$wp_customize->add_control( new WP_Customize_Control( $wp_customize, 'ffengshui_footer_copyright',
array(
'label' => __( 'Copyright Text', 'ffengshui' ),
'section' => 'ffengshui_footer_section',
'settings' => 'ffengshui_footer_copyright',
'type' => 'text',
)
)
);
/**
* Add Animations Section
*/
$wp_customize->add_section(
'ffengshui_animations_display',
array(
'title' => __( 'Animations', 'ffengshui' ),
'capability' => 'edit_theme_options',
)
);
// Add display Animations option
$wp_customize->add_setting(
'ffengshui_animations_display',
array(
'default' => 1,
'sanitize_callback' => 'esc_attr',
)
);
$wp_customize->add_control( new WP_Customize_Control( $wp_customize,
'ffengshui_animations_display',
array(
'label' => __( 'Enable Animations', 'ffengshui' ),
'section' => 'ffengshui_animations_display',
'settings' => 'ffengshui_animations_display',
'type' => 'checkbox',
)
)
);
}
add_action('customize_register', 'ffengshui_customize_register');
function ffengshui_header_style() {
$header_text_color = get_header_textcolor();
if ( ! has_header_image()
&& ( get_theme_support( 'custom-header', 'default-text-color' ) === $header_text_color
|| 'blank' === $header_text_color ) ) {
return;
}
$headerImage = get_header_image();
?>