#genesis-slider, #slides, .genesis-slider-wrap { height: ' . $height . 'px; width: ' . $width . 'px; } .slide-excerpt { width: ' . $slideInfoWidth . 'px; } .slide-excerpt { ' . $vertical . ': 0; } .slide-excerpt { '. $horizontal . ': 0; } div.slider-next, div.slider-previous { ' . $display . '; } '; } /** * Outputs slider script on wp_footer hook. */ function genesis_slider_jflow_params() { $timer = ( int ) genesis_get_slider_option( 'slideshow_timer' ); $duration = ( int ) genesis_get_slider_option( 'slideshow_delay' ); $height = ( int ) genesis_get_slider_option( 'slideshow_height' ); $width = ( int ) genesis_get_slider_option( 'slideshow_width' ); $effect = genesis_get_slider_option( 'slideshow_effect' ); $loop = 0; if ( empty( $effect ) || in_array( $effect, array( 'up', 'down', 'left', 'right' ) ) ) $loop = ( int ) genesis_get_slider_option( 'slideshow_loop' ); $output = 'jQuery(document).ready(function($) { $(".myController").jFlow({ controller: ".jFlowControl", slideWrapper : "#jFlowSlider", slides: "#slides", selectedWrapper: "jFlowSelected", width: "' . $width . 'px", height: "' . $height . 'px", timer: ' . $timer . ', duration: ' . $duration . ', loop: ' . $loop . ', effect: "' . esc_js( $effect ) . '", prev: ".slider-previous", next: ".slider-next", auto: true }); });'; $output = str_replace( array( "\n", "\t", "\r" ), '', $output ); echo ''; } /** * Registers the slider widget */ function Genesis_SliderRegister() { register_widget( 'Genesis_SliderWidget' ); } /** Creates read more link after excerpt */ function genesis_slider_excerpt_more( $more ) { global $post; static $read_more = null; if ( $read_more === null ) $read_more = genesis_get_slider_option( 'slideshow_more_text' ); if ( !$read_more ) return ''; return '… ' . __( $read_more, 'genesis-slider' ) . ''; } /** * Slideshow Widget Class */ class Genesis_SliderWidget extends WP_Widget { function Genesis_SliderWidget() { $widget_ops = array( 'classname' => 'genesis_slider', 'description' => __( 'Displays a slideshow inside a widget area', 'genesis-slider' ) ); $control_ops = array( 'width' => 200, 'height' => 250, 'id_base' => 'genesisslider-widget' ); $this->WP_Widget( 'genesisslider-widget', __( 'Genesis - Slider', 'genesis-slider' ), $widget_ops, $control_ops ); } function save_settings( $settings ) { $settings['_multiwidget'] = 0; update_option( $this->option_name, $settings ); } // display widget function widget( $args, $instance ) { extract( $args ); echo $before_widget; $title = apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ); if ( $title ) echo $before_title . $title . $after_title; $term_args = array( ); if ( 'page' != genesis_get_slider_option( 'post_type' ) ) { if ( genesis_get_slider_option( 'posts_term' ) ) { $posts_term = explode( ',', genesis_get_slider_option( 'posts_term' ) ); if ( 'category' == $posts_term['0'] ) $posts_term['0'] = 'category_name'; if ( 'post_tag' == $posts_term['0'] ) $posts_term['0'] = 'tag'; if ( isset( $posts_term['1'] ) ) $term_args[$posts_term['0']] = $posts_term['1']; } if ( !empty( $posts_term['0'] ) ) { if ( 'category' == $posts_term['0'] ) $taxonomy = 'category'; elseif ( 'post_tag' == $posts_term['0'] ) $taxonomy = 'post_tag'; else $taxonomy = $posts_term['0']; } else { $taxonomy = 'category'; } if ( genesis_get_slider_option( 'exclude_terms' ) ) { $exclude_terms = explode( ',', str_replace( ' ', '', genesis_get_slider_option( 'exclude_terms' ) ) ); $term_args[$taxonomy . '__not_in'] = $exclude_terms; } } if ( genesis_get_slider_option( 'posts_offset' ) ) { $myOffset = genesis_get_slider_option( 'posts_offset' ); $term_args['offset'] = $myOffset; } if ( genesis_get_slider_option( 'post_id' ) ) { $IDs = explode( ',', str_replace( ' ', '', genesis_get_slider_option( 'post_id' ) ) ); if ( 'include' == genesis_get_slider_option( 'include_exclude' ) ) $term_args['post__in'] = $IDs; else $term_args['post__not_in'] = $IDs; } $query_args = array_merge( $term_args, array( 'post_type' => genesis_get_slider_option( 'post_type' ), 'posts_per_page' => genesis_get_slider_option( 'posts_num' ), 'orderby' => genesis_get_slider_option( 'orderby' ), 'order' => genesis_get_slider_option( 'order' ), 'meta_key' => genesis_get_slider_option( 'meta_key' ) ) ); $query_args = apply_filters( 'genesis_slider_query_args', $query_args ); $effect = genesis_get_slider_option( 'slideshow_effect' ); $scroll = ''; if ( empty( $effect ) || in_array( $effect, array( 'up', 'down', 'left', 'right' ) ) ) $scroll = 'genesis-slider-scroll'; add_filter( 'excerpt_more', 'genesis_slider_excerpt_more' ); ?>
have_posts() ) { $show_excerpt = genesis_get_slider_option( 'slideshow_excerpt_show' ); $show_title = genesis_get_slider_option( 'slideshow_title_show' ); $show_type = genesis_get_slider_option( 'slideshow_excerpt_content' ); $show_limit = genesis_get_slider_option( 'slideshow_excerpt_content_limit' ); $more_text = genesis_get_slider_option( 'slideshow_more_text' ); $no_image_link = genesis_get_slider_option( 'slideshow_no_link' ); } while ( $slider_posts->have_posts() ) : $slider_posts->the_post(); $controller .= ''; ?>

'') ); $title = $instance['title']; ?>

'; printf( __( 'To configure slider options, please go to the Slider Settings page.', 'genesis-slider' ), menu_page_url( 'genesis_slider', 0 ) ); echo '

'; } function update( $new_instance, $old_instance ) { $instance = $old_instance; $new_instance = wp_parse_args( (array) $new_instance, array( 'title' => '' ) ); $instance['title'] = strip_tags( $new_instance['title'] ); return $instance; } } /** * Used to exclude taxonomies and related terms from list of available terms/taxonomies in widget form(). * * @since 0.9 * @author Nick Croft * * @param string $taxonomy 'taxonomy' being tested * @return string */ function genesis_slider_exclude_taxonomies( $taxonomy ) { $filters = array( '', 'nav_menu' ); $filters = apply_filters( 'genesis_slider_exclude_taxonomies', $filters ); return ( ! in_array( $taxonomy->name, $filters ) ); } /** * Used to exclude post types from list of available post_types in widget form(). * * @since 0.9 * @author Nick Croft * * @param string $type 'post_type' being tested * @return string */ function genesis_slider_exclude_post_types( $type ) { $filters = array( '', 'attachment' ); $filters = apply_filters( 'genesis_slider_exclude_post_types', $filters ); return ( ! in_array( $type, $filters ) ); } /** * Returns Slider Option * * @param string $key key value for option * @return string */ function genesis_get_slider_option( $key ) { return genesis_get_option( $key, GENESIS_SLIDER_SETTINGS_FIELD ); } /** * Echos Slider Option * * @param string $key key value for option */ function genesis_slider_option( $key ) { if ( ! genesis_get_slider_option( $key ) ) return false; echo genesis_get_slider_option( $key ); }