File: /home/nlrb7/domains/rb7.nl/public_html/wp-content/themes/tempera/frontpage.php
<?php
/**
* Frontpage generation functions
* Creates the slider, the columns, the titles and the extra text
*
* @package tempera
* @subpackage Functions
*/
function tempera_excerpt_length_slider( $length ) {
$temperas = tempera_get_theme_options();
return apply_filters( 'tempera_slider_excerpt', ceil( $temperas['tempera_excerptwords']/2 ) );
}
function tempera_excerpt_more_slider( $more ) {
return apply_filters( 'tempera_slider_more', '...' );
}
// tempera function for inserting slider on the presentation page
// merged from includes/theme-frontpage.php in 1.8.0
function tempera_pp_slider() {
$temperas = tempera_get_theme_options(); ?>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#slider').nivoSlider({
effect: '<?php echo esc_html($temperas['tempera_fpslideranim']); ?>',
animSpeed: <?php echo esc_html($temperas['tempera_fpslidertime']); ?>,
<?php if ($temperas['tempera_fpsliderarrows']=="Hidden"): ?>directionNav: false,<?php endif;
if ($temperas['tempera_fpsliderarrows']=="Always Visible"): ?>directionNavHide: false,<?php endif; ?>
//controlNavThumbs: true,
pauseTime: <?php echo esc_html($temperas['tempera_fpsliderpause']); ?>
});
});
</script>
<?php
} // tempera_pp_slider()
// main frontpage function call
tempera_frontpage();
function tempera_frontpage() {
$temperas = tempera_get_theme_options();
extract($temperas);
?>
<div id="frontpage">
<?php
// Slider
if ($tempera_slideType=="Slider Shortcode") { ?>
<div class="slider-wrapper">
<?php echo do_shortcode( $tempera_slideShortcode ); ?>
</div> <?php
} else {
add_filter( 'excerpt_length', 'tempera_excerpt_length_slider', 999 );
add_filter( 'excerpt_more', 'tempera_excerpt_more_slider', 999 );
remove_filter( 'get_the_excerpt', 'tempera_excerpt_morelink', 20 ); // remove theme continue-reading on slider posts
tempera_ppslider();
}
?>
<div id="pp-afterslider">
<?php
// First FrontPage Title
if($tempera_fronttext1) {?><div id="front-text1"> <h2><?php echo do_shortcode($tempera_fronttext1) ?> </h2></div><?php }
if($tempera_fronttext3) {?><div id="front-text3"> <?php echo force_balance_tags( do_shortcode($tempera_fronttext3) ) ?> </div><?php }
tempera_ppcolumns();
// Second FrontPage title
if($tempera_fronttext2) {?><div id="front-text2"> <h2><?php echo do_shortcode($tempera_fronttext2) ?> </h2></div><?php }
// Frontpage second text area
if($tempera_fronttext4) {?><div id="front-text4"> <?php echo force_balance_tags( do_shortcode($tempera_fronttext4) ) ?> </div><?php }
remove_filter( 'excerpt_length', 'tempera_excerpt_length_slider', 999 );
remove_filter( 'excerpt_more', 'tempera_excerpt_more_slider', 999 );
add_filter( 'get_the_excerpt', 'tempera_excerpt_morelink', 20 ); // restore theme continue-reading for posts list
if ($tempera_frontposts=="Enable"): get_template_part('content/content', 'frontpage'); endif; ?>
</div> <!-- #pp-afterslider -->
</div> <!-- #frontpage -->
<?php
} // tempera_frontpage()
function tempera_ppslider() {
global $temperas;
extract($temperas);
$custom_query = new WP_query();
$slides = array();
if($tempera_slideNumber>0) {
// Switch for Query type
switch ($tempera_slideType) {
case 'Latest Posts' :
$custom_query->query('showposts='.$tempera_slideNumber.'&ignore_sticky_posts=' . apply_filters('tempera_pp_nosticky', 1) );
break;
case 'Random Posts' :
$custom_query->query('showposts='.$tempera_slideNumber.'&orderby=rand&ignore_sticky_posts=' . apply_filters('tempera_pp_nosticky', 1) );
break;
case 'Latest Posts from Category' :
$custom_query->query('showposts='.$tempera_slideNumber.'&category_name='.$tempera_slideCateg.'&ignore_sticky_posts=' . apply_filters('tempera_pp_nosticky', 1) );
break;
case 'Random Posts from Category' :
$custom_query->query('showposts='.$tempera_slideNumber.'&category_name='.$tempera_slideCateg.'&orderby=rand&ignore_sticky_posts=' . apply_filters('tempera_pp_nosticky', 1) );
break;
case 'Sticky Posts' :
$custom_query->query(array('post__in' => get_option( 'sticky_posts' ), 'showposts' =>$tempera_slideNumber,'ignore_sticky_posts' => 1));
break;
case 'Specific Posts' :
// Transofm string separated by commas into array
$pieces_array = explode(",", $tempera_slideSpecific);
$custom_query->query(array( 'post_type' => 'any', 'showposts' => -1, 'post__in' => $pieces_array, 'ignore_sticky_posts' => apply_filters('tempera_pp_nosticky', 1),'orderby' => 'post__in' ));
break;
case 'Custom Slides':
break;
case 'Disabled':
break;
}//switch
};
// switch for reading/creating the slides
switch ($tempera_slideType) {
case 'Disabled':
break;
case 'Custom Slides':
for ($i=1;$i<=5;$i++):
if(${"tempera_sliderimg$i"}):
$slide['image'] = esc_url(${"tempera_sliderimg$i"});
$slide['link'] = esc_url(${"tempera_sliderlink$i"});
$slide['title'] = ${"tempera_slidertitle$i"};
$slide['text'] = ${"tempera_slidertext$i"};
$slides[] = $slide;
endif;
endfor;
break;
default:
if($tempera_slideNumber>0):
if ( $custom_query->have_posts() ) while ($custom_query->have_posts()) :
$custom_query->the_post();
$img = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ), 'slider');
if (false === $img) continue; // skip posts that don't have featured images set
$slide['image'] = esc_url( $img[0] );
$slide['link'] = esc_url( get_permalink() );
$slide['title'] = get_the_title();
$slide['text'] = get_the_excerpt();
$slides[] = $slide;
endwhile;
endif; // slidenumber>0
break;
}; // switch
if (count($slides)>0) { ?>
<div class="slider-wrapper theme-default <?php if($tempera_fpsliderarrows=="Visible on Hover"): ?>slider-navhover<?php endif; ?> slider-<?php echo preg_replace("/[^a-z0-9]/i","",strtolower($tempera_fpslidernav)); ?>">
<div class="ribbon"></div>
<div id="slider" class="nivoSlider">
<?php foreach($slides as $id=>$slide) {
if($slide['image']): ?>
<a href='<?php echo ($slide['link']?$slide['link']:'#'); ?>'>
<img src='<?php echo $slide['image']; ?>' data-thumb='<?php echo $slide['image']; ?>' alt="<?php echo ($slide['title']?esc_attr( $slide['title'] ) : ''); ?>" <?php if ($slide['title'] || $slide['text']): ?> title="#caption<?php echo $id;?>" <?php endif; ?> />
</a><?php endif; ?>
<?php }; ?>
</div>
<?php foreach($slides as $id=>$slide) { ?>
<div id="caption<?php echo $id;?>" class="nivo-html-caption">
<?php echo (strlen($slide['title'])>0?'<h2>'.$slide['title'].'</h2>':'');
echo (strlen($slide['text'])>0?'<div class="slide-text">'.$slide['text'].'</div>':''); ?>
</div>
<?php }; ?>
</div>
<?php } ?>
<div class="slider-shadow"></div>
<?php
} // tempera_ppslider()
function tempera_ppcolumns() {
global $temperas;
extract($temperas);
$custom_query2 = new WP_query();
$columns = array();
if($tempera_columnNumber>0):
// Switch for Query type
switch ($tempera_columnType) {
case 'Latest Posts' :
$custom_query2->query('showposts='.$tempera_columnNumber.'&ignore_sticky_posts=1');
break;
case 'Random Posts' :
$custom_query2->query('showposts='.$tempera_columnNumber.'&orderby=rand&ignore_sticky_posts=1');
break;
case 'Latest Posts from Category' :
$custom_query2->query('showposts='.$tempera_columnNumber.'&category_name='.$tempera_columnCateg.'&ignore_sticky_posts=1');
break;
case 'Random Posts from Category' :
$custom_query2->query('showposts='.$tempera_columnNumber.'&category_name='.$tempera_columnCateg.'&orderby=rand&ignore_sticky_posts=1');
break;
case 'Sticky Posts' :
$custom_query2->query(array('post__in' => get_option( 'sticky_posts' ), 'showposts' =>$tempera_columnNumber, 'ignore_sticky_posts' => 1));
break;
case 'Specific Posts' :
// Transform string separated by commas into array
$pieces_array = explode(",", $tempera_columnSpecific);
$custom_query2->query(array( 'post_type' => 'any', 'post__in' => $pieces_array, 'ignore_sticky_posts' => 1,'orderby' => 'post__in', 'showposts' => -1 ));
break;
case 'Widget Columns':
case 'Disabled':
// no query needed
break;
}; //switch
endif; // columnNumber>0
// switch for reading/creating the columns
switch ($tempera_columnType) {
case 'Disabled':
break;
case 'Widget Columns':
// if widgets loaded
if (is_active_sidebar('presentation-page-columns-area')) {
echo "<div id='front-columns'>";
dynamic_sidebar( 'presentation-page-columns-area' );
echo "</div>";
}
// if no widgets loaded use the defaults
else {
global $tempera_column_defaults;
tempera_columns($tempera_column_defaults,$tempera_nrcolumns, $tempera_columnreadmore);
}
break;
default:
if($tempera_columnNumber>0):
if ( $custom_query2->have_posts() )
while ($custom_query2->have_posts()) :
$custom_query2->the_post();
$img = wp_get_attachment_image_src( get_post_thumbnail_id( get_the_ID() ),'columns');
if (false === $img) continue; // skip posts that don't have featured images set
$column['image'] = esc_url( $img[0] );
$column['link'] = esc_url( get_permalink() );
$column['text'] = get_the_excerpt();
$column['title'] = get_the_title();
$columns[] = $column;
endwhile;
tempera_columns($columns,$tempera_nrcolumns, $tempera_columnreadmore);
endif; // columnNumber>0
break;
}; // switch
} // tempera_ppcolumns()
function tempera_columns($columns,$nr_columns,$readmore){
$counter=0;
global $temperas;
extract($temperas);
?>
<div id="front-columns" class="pp-columns<?php echo $nr_columns; ?>">
<?php
foreach($columns as $column) {
if($column['image']) :
$counter++;
if (!isset($column['blank'])) $column['blank'] = 0;
$coldata = array(
'colno' => (($counter%$nr_columns)?$counter%$nr_columns:$nr_columns),
'counter' => $counter,
'image' => esc_url( $column['image'] ),
'link' => esc_url( $column['link'] ),
'blank' => ($column['blank']?'target="_blank"':''),
'title' => wp_kses_data($column['title']),
'text' => wp_kses_data($column['text']),
'readmore' => wp_kses_data($readmore),
);
tempera_singlecolumn_output($coldata);
endif;
}; ?>
</div><?php
} // tempera_columns()
// tempera_singlecolumn_output() moved to includes/widget.php and made pluggable
// FIN