250, 'height' => 30, 'flex-height' => true, 'flex-width' => true, 'default-text-color' => 'ffffff', 'wp-head-callback' => '', 'admin-head-callback' => '', 'admin-preview-callback' => '', ); add_theme_support( 'custom-header', apply_filters( 'franz_custom_header_args', $args ) ); $args = array( 'default-color' => 'ffffff' ); add_theme_support( 'custom-background', apply_filters( 'franz_custom_background_args', $args ) ); set_post_thumbnail_size( 850, 450, true ); add_image_size( 'franz-medium', 600, 300, true ); add_image_size( 'franz-slider', 1920, 685, true ); add_image_size( 'franz-slider-contained', 1140, 685, true ); add_post_type_support( 'page', 'excerpt' ); register_nav_menus( array( 'top-menu' => __( 'Top Menu', 'franz-josef' ), 'header-menu' => __( 'Header Menu', 'franz-josef' ), 'footer-menu' => __( 'Footer Menu', 'franz-josef' ), ) ); do_action( 'franz_setup' ); } add_action( 'after_setup_theme', 'franz_setup' ); /** * Register widgetized areas */ function franz_widgets_init() { global $franz_settings; $args = array( 'name' => __( 'Sidebar', 'franz-josef' ), 'id' => 'sidebar', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ); register_sidebar( apply_filters( 'franz_sidebar_args', $args ) ); $args = array( 'name' => __( 'Footer', 'franz-josef' ), 'id' => 'footer-widgets', 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

', ); register_sidebar( apply_filters( 'franz_footer_widget_args', $args ) ); $args = array( 'name' => __( 'Top Bar', 'franz-josef' ), 'description' => __( "Use this widget area to customise the content and element positioning in the top bar. Leave empty to use the theme's default.", 'franz-josef' ), 'id' => 'top-bar', 'before_widget' => '', 'after_widget' => '', 'before_title' => '', 'after_title' => '', ); register_sidebar( apply_filters( 'franz_top_bar_widget_args', $args ) ); } add_action( 'widgets_init', 'franz_widgets_init' ); if ( ! function_exists( 'franz_column_mode' ) ) : /** * Get the theme's final column mode setting for display */ function franz_column_mode( $post_id = NULL ){ global $franz_settings, $franz_column_mode; if ( $franz_column_mode ) return $franz_column_mode; // Check the front-end template if ( ! is_admin() && ! $post_id ){ if ( is_page_template( 'template-single-column.php' ) ) return $franz_column_mode = 'one-column'; if ( is_page_template( 'template-two-column-left-sidebar.php' ) ) return $franz_column_mode = 'two-column left-sidebar'; // Check for posts page template if ( is_home() && $home_page = get_option( 'page_for_posts' ) ){ $template = get_post_meta( $home_page, '_wp_page_template', true ); if ( $template && $template != 'default' ) { if ( stripos( $template, 'single-column' ) !== false ) return $franz_column_mode = 'one-column'; if ( stripos( $template, 'template-two-column-left-sidebar' ) !== false ) return $franz_column_mode = 'two-column left-sidebar'; }; } return $franz_column_mode = 'two-column right-sidebar'; } /* Check the template in Edit Page screen in admin */ if ( is_admin() || $post_id ){ if ( ! $post_id ){ $post_id = ( isset( $_GET['post'] ) ) ? $_GET['post'] : NULL; } $page_template = get_post_meta( $post_id, '_wp_page_template', true ); if ( $page_template != 'default' ){ if ( strpos( $page_template, 'template-single-column' ) === 0 ) return $franz_column_mode = 'one-column'; if ( strpos( $page_template, 'template-two-column' ) === 0 ) return $franz_column_mode = 'two-column'; } } } endif; /** * Apply the correct column mode for static posts page as per its page template * * @package Graphene * @since 1.9 */ function graphene_posts_page_column(){ if ( ! is_home() ) return; $home_page = get_option( 'page_for_posts' ); if ( ! $home_page ) return; $template = get_post_meta( $home_page, '_wp_page_template', true ); if ( ! $template || $template == 'default' ) return; global $graphene_settings; switch ( $template ) { case 'template-onecolumn.php': $graphene_settings['column_mode'] = 'one_column'; break; case 'template-twocolumnsleft.php': $graphene_settings['column_mode'] = 'two_col_left'; break; case 'template-twocolumnsright.php': $graphene_settings['column_mode'] = 'two_col_right'; break; case 'template-threecolumnsleft.php': $graphene_settings['column_mode'] = 'three_col_left'; break; case 'template-threecolumnscenter.php': $graphene_settings['column_mode'] = 'three_col_center'; break; case 'template-threecolumnsright.php': $graphene_settings['column_mode'] = 'three_col_right'; break; } } add_action( 'template_redirect', 'graphene_posts_page_column' ); /** * Get the content width based on the theme's design and stylesheet. * * Used to set the width of images and content. Should be equal to the width the theme * is designed for, generally via the style.css stylesheet. */ function franz_get_content_width(){ global $franz_settings, $franz_defaults, $content_width; $column_mode = franz_column_mode(); if ( $column_mode == 'one-column' ) { $content_width = 1140; set_post_thumbnail_size( $content_width, 450, true ); } return apply_filters( 'franz_content_width', $content_width ); } /** * Set the global $content_width variable */ function franz_set_content_width(){ global $content_width; $content_width = franz_get_content_width(); } add_action( 'template_redirect', 'franz_set_content_width' ); /** * Add content width parameter to the WordPress editor */ function franz_editor_width(){ global $content_width, $franz_settings; $content_width = franz_get_content_width(); ?>