-
-
Save robneu/5f6c6eb8ac20fa5ef6a8 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* This file adds the Home Page to the Tidy Theme. | |
*/ | |
add_action( 'genesis_meta', 'tidy_home_genesis_meta' ); | |
/** | |
* Add widget support for homepage. If no widgets active, display the default loop. | |
* | |
*/ | |
function tidy_home_genesis_meta() { | |
//* Do nothing if we're not on the front page. | |
if ( ! is_front_page() ) { | |
return; | |
} | |
if ( is_active_sidebar( 'home-top' ) || is_active_sidebar( 'home-welcome' ) || is_active_sidebar( 'home-middle-left' ) || is_active_sidebar( 'home-middle-right' ) || is_active_sidebar( 'home-cta' ) || is_active_sidebar( 'home-bottom' ) ) { | |
// Force content-sidebar layout setting | |
add_filter( 'genesis_site_layout', '__genesis_return_full_width_content' ); | |
// Add tidy-home body class | |
add_filter( 'body_class', 'tidy_body_class' ); | |
} | |
if ( is_active_sidebar( 'home-top' ) ) { | |
// Add excerpt length filter | |
add_action( 'genesis_before_loop', 'tidy_top_excerpt_length' ); | |
// Add homepage widgets | |
add_action( 'genesis_before_loop', 'tidy_homepage_top_widgets' ); | |
// Remove excerpt length filter | |
add_action( 'genesis_before_loop', 'tidy_remove_top_excerpt_length' ); | |
} | |
if ( is_active_sidebar( 'home-middle-left' ) || is_active_sidebar( 'home-middle-right' ) || is_active_sidebar( 'home-cta' ) || is_active_sidebar( 'home-bottom' ) ) { | |
// Add homepage widgets | |
add_action( 'genesis_loop', 'tidy_homepage_widgets' ); | |
} | |
} | |
function tidy_body_class( $classes ) { | |
$classes[] = 'tidy-home'; | |
return $classes; | |
} | |
function tidy_excerpt_length( $length ) { | |
return 25; // pull first 50 words | |
} | |
function tidy_top_excerpt_length() { | |
add_filter( 'excerpt_length', 'tidy_excerpt_length' ); | |
} | |
function tidy_remove_top_excerpt_length() { | |
remove_filter( 'excerpt_length', 'tidy_excerpt_length' ); | |
} | |
function tidy_homepage_top_widgets() { | |
echo '<div class="home-feature">'; | |
genesis_widget_area( 'home-top', array( | |
'before' => '<div class="home-top widget-area">', | |
'after' => '</div>', | |
) ); | |
genesis_widget_area( 'home-welcome', array( | |
'before' => '<div class="home-welcome widget-area">', | |
'after' => '</div>', | |
) ); | |
echo '</div>'; | |
echo '<div style="clear:both;"></div>'; | |
genesis_widget_area( 'home-cta-top', array( | |
'before' => '<div class="home-cta-top widget-area">', | |
'after' => '</div>', | |
) ); | |
} | |
function tidy_homepage_widgets() { | |
if ( is_active_sidebar( 'home-middle-left' ) || is_active_sidebar( 'home-middle-right' ) ) { | |
echo '<div class="home-middle">'; | |
genesis_widget_area( 'home-middle-left', array( | |
'before' => '<div class="home-middle-left widget-area">', | |
'after' => '</div>', | |
) ); | |
genesis_widget_area( 'home-middle-right', array( | |
'before' => '<div class="home-middle-right widget-area">', | |
'after' => '</div>', | |
) ); | |
echo '</div>'; | |
} | |
genesis_widget_area( 'home-cta', array( | |
'before' => '<div class="home-cta widget-area">', | |
'after' => '</div>', | |
) ); | |
genesis_widget_area( 'home-bottom', array( | |
'before' => '<div class="home-bottom widget-area">', | |
'after' => '</div>', | |
) ); | |
} | |
genesis(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment