'swift_review_widget_latest_reviews', 'description' => __('Swift review latest reviews.'), 'customize_selective_refresh' => true, ); parent::__construct('swift_review_latest_reviews', __('Latest Reviews'), $widget_ops); } /** * Outputs the content for the current latest jobs widget instance. * * @param array $args Display arguments including 'before_title', 'after_title', * 'before_widget', and 'after_widget'. * @param array $instance Settings for the current Recent Posts widget instance. */ public function widget($args, $instance) { if (!isset($args['widget_id'])) { $args['widget_id'] = $this->id; } $title = (!empty($instance['title']) ) ? $instance['title'] : __('Recent Reviews'); $title = apply_filters('widget_title', $title, $instance, $this->id_base); $number = (!empty($instance['number']) ) ? absint($instance['number']) : 5; if (!$number) $number = 5; $sr_style = (!empty($instance['sr_style']) ) ? $instance['sr_style'] : 'sr_style_1'; $show_date = isset($instance['show_date']) ? $instance['show_date'] : false; $latest_reviews_args = array( 'post_type' => 'swift_reviews', 'post_status' => 'publish', 'posts_per_page' => $number, 'orderby' => 'date', 'order' => 'DESC', 'no_found_rows' => true, ); $r = new WP_Query($latest_reviews_args); if ($sr_style === 'sr_style_2') { if ($r->have_posts()) { wp_enqueue_style('swift-review-slider', plugins_url('../../css/swift-review-slider.css', __FILE__), '', '', ''); wp_enqueue_style('swift-review-slick-carousel', plugins_url('../../css/slick.css', __FILE__), '', '', ''); wp_enqueue_style('swift-review-slick-theme-carousel', plugins_url('../../css/slick-theme.css', __FILE__), '', '', ''); wp_enqueue_script('swift-review-slick-carousel-script', plugins_url('../../js/slick.min.js', __FILE__), array('jquery'), '', true); echo $args['before_widget']; if ($title) { echo $args['before_title'] . $title . $args['after_title']; } $sr_slider_top = $sr_slider_bottom = $sr_slide_output = ''; $sr_first_reviewer_avatar = SWIFTREVIEWS__PLUGIN_URL . "/images/swiftreview_user_avatar.png"; $sr_last_reviewer_avatar = SWIFTREVIEWS__PLUGIN_URL . "/images/swiftreview_user_avatar.png"; while ($r->have_posts()) : $r->the_post(); // get first post if ($r->current_post == 1) { $sr_first_reviewer_avatar = sr_get_gravatar(get_the_ID()); } // get last post if ($r->current_post == ($r->post_count - 1)) { $sr_last_reviewer_avatar = sr_get_gravatar(get_the_ID()); } setup_postdata($r); $rating = get_post_meta(get_the_ID(), 'swiftreviews_ratings', true); $reviewer_name = get_post_meta(get_the_ID(), 'swiftreviews_reviewer_name', true); $sr_slider_bottom .= '
'; $sr_slider_bottom .= '
'; $sr_slider_bottom .= buildStarRating('', $rating, false); $sr_slider_bottom .= '
'; $sr_slider_bottom .= '
' . $reviewer_name . '
'; $sr_slider_bottom .= apply_filters('the_content', get_post_field('post_content', get_the_ID())); $sr_slider_bottom .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
' . $reviewer_name . '
'; $sr_slider_top .= '
'; endwhile; if (isset($_SESSION['swift_review_slide_cnt']) && !empty($_SESSION['swift_review_slide_cnt'])) { $swift_review_slide_cnt = $_SESSION['swift_review_slide_cnt']; $swift_review_slide_cnt++; } else { $swift_review_slide_cnt = 1; $_SESSION['swift_review_slide_cnt'] = 1; } $_SESSION['swift_review_slide_cnt'] = $swift_review_slide_cnt; $sr_slide_id = $swift_review_slide_cnt . time(); $sr_slide_output .= '
' . $sr_slider_top . '
'; $sr_slide_output .= '
' . $sr_slider_bottom . '
'; add_action('wp_footer', 'swift_review_style_2', 50, 1); do_action('wp_footer', $sr_slide_id); echo $sr_slide_output; echo $args['after_widget']; } } else if ($sr_style === 'sr_style_3') { if ($r->have_posts()) { wp_enqueue_style('swift-review-slider', plugins_url('../../css/swift-review-slider.css', __FILE__), '', '', ''); wp_enqueue_style('swift-review-slick-carousel', plugins_url('../../css/slick.css', __FILE__), '', '', ''); wp_enqueue_style('swift-review-slick-theme-carousel', plugins_url('../../css/slick-theme.css', __FILE__), '', '', ''); wp_enqueue_script('swift-review-slick-carousel-script', plugins_url('../../js/slick.min.js', __FILE__), array('jquery'), '', true); echo $args['before_widget']; if ($title) { echo $args['before_title'] . $title . $args['after_title']; } $sr_slider_top = $sr_slide_output = ''; while ($r->have_posts()) : $r->the_post(); setup_postdata($r); $rating = get_post_meta(get_the_ID(), 'swiftreviews_ratings', true); $reviewer_name = get_post_meta(get_the_ID(), 'swiftreviews_reviewer_name', true); $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= buildStarRating('', $rating, false); $sr_slider_top .= apply_filters('the_excerpt', get_post_field('post_content', get_the_ID())); $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
' . $reviewer_name . '
'; $sr_slider_top .= '
' . $reviewer_name . '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
'; endwhile; if (isset($_SESSION['swift_review_slide_cnt']) && !empty($_SESSION['swift_review_slide_cnt'])) { $swift_review_slide_cnt = $_SESSION['swift_review_slide_cnt']; $swift_review_slide_cnt++; } else { $swift_review_slide_cnt = 1; $_SESSION['swift_review_slide_cnt'] = 1; } $_SESSION['swift_review_slide_cnt'] = $swift_review_slide_cnt; $sr_slide_id = $swift_review_slide_cnt . time(); $sr_slide_output .= '
' . $sr_slider_top . '
'; add_action('wp_footer', 'swift_review_style_3', 50, 1); do_action('wp_footer', $sr_slide_id); echo $sr_slide_output; echo $args['after_widget']; } } else if($sr_style === 'sr_style_4'){ if ($r->have_posts()) { wp_enqueue_style('swift-review-slider', plugins_url('../../css/swift-review-slider.css', __FILE__), '', '', ''); wp_enqueue_style('swift-review-slick-carousel', plugins_url('../../css/slick.css', __FILE__), '', '', ''); wp_enqueue_style('swift-review-slick-theme-carousel', plugins_url('../../css/slick-theme.css', __FILE__), '', '', ''); wp_enqueue_script('swift-review-slick-carousel-script', plugins_url('../../js/slick.min.js', __FILE__), array('jquery'), '', true); echo $args['before_widget']; if ($title) { echo $args['before_title'] . $title . $args['after_title']; } $sr_slider_top = $sr_slide_output = ''; while ($r->have_posts()) : $r->the_post(); setup_postdata($r); $rating = get_post_meta(get_the_ID(), 'swiftreviews_ratings', true); $reviewer_name = get_post_meta(get_the_ID(), 'swiftreviews_reviewer_name', true); $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= buildStarRating('', $rating, false); $sr_slider_top .= apply_filters('the_excerpt', get_post_field('post_content', get_the_ID())); $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
' . $reviewer_name . '
'; $sr_slider_top .= '
' . $reviewer_name . '
'; $sr_slider_top .= '
'; $sr_slider_top .= '
'; endwhile; if (isset($_SESSION['swift_review_slide_cnt']) && !empty($_SESSION['swift_review_slide_cnt'])) { $swift_review_slide_cnt = $_SESSION['swift_review_slide_cnt']; $swift_review_slide_cnt++; } else { $swift_review_slide_cnt = 1; $_SESSION['swift_review_slide_cnt'] = 1; } $_SESSION['swift_review_slide_cnt'] = $swift_review_slide_cnt; $sr_slide_id = $swift_review_slide_cnt . time(); $sr_slide_output .= '
' . $sr_slider_top . '
'; add_action('wp_footer', 'swift_review_style_4', 50, 1); do_action('wp_footer', $sr_slide_id); echo $sr_slide_output; echo $args['after_widget']; } }else { /** * Filters the arguments for the Recent Jobs widget. * * @param array $args An array of arguments used to retrieve the recent posts. */ if ($r->have_posts()) : echo $args['before_widget']; if ($title) { if (get_option('swiftreviews_listing_page')) { echo $args['before_title'] . '' . $title . '' . $args['after_title']; } else { echo $args['before_title'] . $title . $args['after_title']; } } ?>

>

id="get_field_id('show_date'); ?>" name="get_field_name('show_date'); ?>" />

jQuery(document).ready(function ($) { jQuery("#swift_review_slide_' . $id . '_thumb").not(".slick-initialized").slick({ slidesToShow: 1, slidesToScroll: 1, arrows: false, fade: true, dots: false, adaptiveHeight: false, asNavFor: "#swift_review_slide_' . $id . '_text", centerMode: true, }); jQuery("#swift_review_slide_' . $id . '_text").not(".slick-initialized").slick({ slidesToShow: 5, slidesToScroll: 3, asNavFor: "#swift_review_slide_' . $id . '_thumb", dots: false, centerMode: true, adaptiveHeight: false, focusOnSelect: true, responsive: [{ breakpoint: 768, settings: { slidesToShow: 3, slidesToScroll: 1, infinite: true, dots: false } }, { breakpoint: 480, settings: { slidesToShow: 1, slidesToScroll: 1, infinite: true, dots: false } }] }); }); '; } function swift_review_style_3($id) { echo ' '; } function swift_review_style_4($id) { echo ' '; }