Untitled diff

Created Diff never expires
6 removals
49 lines
6 additions
49 lines
/**
/**
* Grid Loop Post Classes
* Grid Loop Post Classes
*
*
* @author Bill Erickson
* @author Bill Erickson
* @link http://www.billerickson.net/a-better-and-easier-grid-loop/
* @link http://www.billerickson.net/a-better-and-easier-grid-loop/
*
*
* @param array $classes
* @param array $classes
* @return array $classes
* @return array $classes
*/
*/
function be_grid_loop_post_classes( $classes ) {
function be_grid_loop_post_classes( $classes ) {
global $wp_query;
global $wp_query;
$grid_args = be_grid_loop_pagination();
$grid_args = be_grid_loop_pagination();
if( ! $grid_args )
if( ! $grid_args )
return $classes;
return $classes;
// First Page Classes
// First Page Classes
if( ! $wp_query->query_vars['paged'] ) {
if( ! $wp_query->query_vars['paged'] ) {
// Features
// Features
if( $wp_query->current_post < $grid_args['features_on_front'] ) {
if( $wp_query->current_post < $grid_args['features_on_front'] ) {
$classes[] = 'feature';
$classes[] = 'feature';
// Teasers
// Teasers
} else {
} else {
$classes[] = 'one-third';
$classes[] = 'one-half';
if( 0 == ( $wp_query->current_post - $grid_args['features_on_front'] ) || 0 == ( $wp_query->current_post - $grid_args['features_on_front'] ) % 3 )
if( 0 == ( $wp_query->current_post - $grid_args['features_on_front'] ) || 0 == ( $wp_query->current_post - $grid_args['features_on_front'] ) % 2 )
$classes[] = 'first';
$classes[] = 'first';
}
}
// Inner Pages
// Inner Pages
} else {
} else {
// Features
// Features
if( $wp_query->current_post < $grid_args['features_inside'] ) {
if( $wp_query->current_post < $grid_args['features_inside'] ) {
$classes[] = 'feature';
$classes[] = 'feature';
// Teasers
// Teasers
} else {
} else {
$classes[] = 'one-third';
$classes[] = 'one-half';
if( 0 == ( $wp_query->current_post - $grid_args['features_inside'] ) || 0 == ( $wp_query->current_post - $grid_args['features_inside'] ) % 3 )
if( 0 == ( $wp_query->current_post - $grid_args['features_inside'] ) || 0 == ( $wp_query->current_post - $grid_args['features_inside'] ) % 2 )
$classes[] = 'first';
$classes[] = 'first';
}
}
}
}
return $classes;
return $classes;
}
}
add_filter( 'post_class', 'be_grid_loop_post_classes' );
add_filter( 'post_class', 'be_grid_loop_post_classes' );