/**
  * Generate the HTML for this slideshow.
  * @since  1.0.0
  * @return string The generated HTML.
  */
 protected function generate_slideshow($instance)
 {
     if (!is_singular()) {
         return '';
     }
     global $wooslider;
     $settings = $wooslider->settings->get_settings();
     $settings['slider_type'] = $this->slider_type;
     $extra_args = array();
     foreach ($instance as $k => $v) {
         if (!in_array($k, array_keys($settings))) {
             $extra_args[$k] = esc_attr($v);
             unset($instance[$k]);
         }
     }
     // Make sure the various settings are applied.
     if (isset($instance['show_advanced_settings']) && $instance['show_advanced_settings'] == true) {
         foreach ($settings as $k => $v) {
             if (isset($instance[$k]) && $instance[$k] != $settings[$k]) {
                 $settings[$k] = esc_attr($instance[$k]);
             }
         }
     }
     $html = wooslider($settings, $extra_args, false);
     return $html;
 }
 /**
  * Generate the HTML for this slideshow.
  * @since  1.0.0
  * @return string The generated HTML.
  */
 protected function generate_slideshow($instance)
 {
     global $wooslider;
     $settings = $wooslider->settings->get_settings();
     $settings['slider_type'] = $this->slider_type;
     $extra_args = array('slide_page' => '');
     // Slide Pages.
     if (isset($instance['slide_page']) && is_array($instance['slide_page'])) {
         $count = 0;
         foreach ($instance['slide_page'] as $k => $v) {
             $count++;
             if ($count > 1) {
                 $extra_args['slide_page'] .= ',';
             }
             $extra_args['slide_page'] .= esc_attr($v);
         }
         unset($instance['slide_page']);
     }
     foreach ($instance as $k => $v) {
         if (!in_array($k, array_keys($settings))) {
             $extra_args[$k] = esc_attr($v);
         }
     }
     // Make sure the various settings are applied.
     if (isset($instance['show_advanced_settings']) && $instance['show_advanced_settings'] == true) {
         foreach ($settings as $k => $v) {
             if (isset($instance[$k]) && $instance[$k] != $settings[$k]) {
                 $settings[$k] = esc_attr($instance[$k]);
             }
         }
     }
     $html = wooslider($settings, $extra_args, false);
     return $html;
 }
 /**
  * WooSlider shortcode wrapper.
  * @since  1.0.0
  * @param  array $atts    	Optional shortcode attributes, used to customise slider settings.
  * @param  string $content 	Content, if the shortcode supports wrapping of content.
  * @return string          	Rendered WooSlider.
  */
 function wooslider_shortcode($atts, $content = null)
 {
     global $wooslider;
     $args = $wooslider->settings->get_settings();
     $args['slider_type'] = 'attachments';
     $settings = shortcode_atts($args, $atts);
     $extra_args = array();
     foreach ((array) $atts as $k => $v) {
         if (!in_array($k, array_keys($args))) {
             $extra_args[$k] = $v;
         }
     }
     return wooslider($settings, $extra_args, false);
 }
Example #4
0
/**
 * Business Slider
 * @since 5.6.0
 * @return void
 */
function woo_wooslider_business()
{
    global $post;
    // Set default values
    $settings = array('slider_biz_number' => '5', 'slider_biz_title' => 'true', 'slider_biz_slide_group' => '', 'slider_biz_order' => 'DESC', 'slider_biz_overlay' => 'bottom');
    // Get slider global settings
    $global_settings = woo_slider_get_global_settings();
    // Merge global & slider specific options
    $settings = array_merge($settings, $global_settings);
    // Compare default values against Theme Options
    $settings = woo_get_dynamic_values($settings);
    // Translate options into something WooSlider can read
    $slider_settings = apply_filters('woo_slider_business_template_settings', array('slider_type' => 'slides', 'smoothheight' => 'true', 'direction_nav' => 'true', 'control_nav' => $settings['slider_pagination'], 'pause_on_hover' => $settings['slider_hover'], 'slider_animation' => $settings['slider_effect'], 'autoslide' => $settings['slider_auto'], 'slideshow_speed' => $settings['slider_interval'], 'animation_duration' => $settings['slider_speed']));
    // Setup the "Slide Group", if one is set.
    $slide_page = '';
    $slide_page_obj = get_term($settings['slider_biz_slide_group'], 'slide-page');
    if (is_object($slide_page_obj)) {
        if (isset($slide_page_obj->slug)) {
            $slide_page = $slide_page_obj->slug;
        }
    }
    // Get "Slide Group" from Page
    if (isset($post->ID)) {
        $stored_slide_page = get_post_meta($post->ID, '_slide-page', true);
        if ('0' == $stored_slide_page) {
            $slide_page = '';
        }
        if ('' != $stored_slide_page && '0' != $stored_slide_page) {
            $slide_page_obj = get_term($stored_slide_page, 'slide-page');
            if (is_object($slide_page_obj)) {
                if (isset($slide_page_obj->slug)) {
                    $slide_page = $slide_page_obj->slug;
                }
            }
        }
    }
    $slides_args = apply_filters('woo_slider_business_template_args', array('slide_page' => $slide_page, 'display_title' => $settings['slider_biz_title'], 'limit' => $settings['slider_biz_number'], 'layout' => 'text-' . $settings['slider_biz_overlay'], 'order' => $settings['slider_biz_order'], 'imageslide' => 'true', 'link_slide' => 'true', 'theme' => 'business'));
    // Fire WooSlider.
    wooslider($slider_settings, $slides_args);
}