public function widget($args, $instance) { $this->assets(); if (isset($instance['title'])) { $title = apply_filters('widget_title', $instance['title']); } if (isset($instance['no_items'])) { $no_items = apply_filters('widget_content', $instance['no_items']); } if (isset($instance['cwp_tp_category'])) { $cwp_tp_category = apply_filters('widget_content', $instance['cwp_tp_category']); } if (isset($instance['title_type'])) { $post_type = apply_filters('widget_content', $instance['title_type']); } if (isset($instance['show_image'])) { $show_image = apply_filters('widget_content', $instance['show_image']); } // before and after widget arguments are defined by themes //echo "<div id='cwp_top_products_widget'>"; echo $args['before_widget']; if (!empty($title)) { echo $args['before_title'] . $title . $args['after_title']; } if ($cwp_tp_category == "All") { $cwp_tp_category = ""; } // Loop to get the most popular posts, ordered by the author's final grade. $query_args = array('posts_per_page' => $no_items, 'post_type' => "any", 'post__not_in' => get_option('sticky_posts'), 'category_name' => $cwp_tp_category, 'meta_key' => 'cwp_meta_box_check', 'meta_query' => array(array('key' => 'cwp_meta_box_check', 'value' => 'Yes'), array('key' => 'option_overall_score'))); add_filter('posts_orderby', array($this, 'custom_order_by')); $cwp_top_products_loop = new WP_Query($query_args); remove_filter('posts_orderby', array($this, 'custom_order_by')); //echo $cwp_top_products_loop->request; echo "<ul>"; while ($cwp_top_products_loop->have_posts()) { $cwp_top_products_loop->the_post(); $product_image = wppr_get_image_id(get_the_ID(), get_post_meta(get_the_ID(), "cwp_rev_product_image", true), 'wppr_widget_image'); ?> <li class="cwp-popular-review cwp_top_posts_widget_<?php the_ID(); if ($show_image == true && !empty($product_image)) { echo ' wppr-cols-3'; } else { echo ' wppr-cols-2'; } ?> "> <?php if ($show_image == true && !empty($product_image)) { ?> <img class="cwp_rev_image wppr-col" src="<?php echo $product_image; ?> "\> <?php } ?> <a href="<?php the_permalink(); ?> " class="wppr-col"> <?php if ($post_type == true) { $titlep = get_post_meta($cwp_top_products_loop->post->ID, "cwp_rev_product_name", true); echo $titlep; } else { the_title(); } ?> </a> <?php for ($i = 1; $i < 6; $i++) { ${"option" . $i . "_content"} = get_post_meta($cwp_top_products_loop->post->ID, "option_" . $i . "_content", true); //if(empty(${"option".$i."_content"})) { ${"option".$i."_content"} = __("Default Feature ".$i, "cwppos"); } } $review_score = cwppos_calc_overall_rating($cwp_top_products_loop->post->ID); $review_score = $review_score['overall']; if (!empty($review_score)) { ?> <div class="review-grade-widget wppr-col"> <div class="cwp-review-chart"> <div class="cwp-review-percentage" data-percent="<?php echo $review_score; ?> "><span></span></div> </div><!-- end .chart --> </div> <?php } ?> </li><!-- end .popular-review --> <?php } ?> <?php wp_reset_postdata(); // reset the query echo "</ul>"; echo $args['after_widget']; //echo "</div>"; // end #cwp_top_products_widget }
function cwppos_show_review($id = "") { global $post; if (post_password_required($post)) { return false; } wp_enqueue_style('cwp-pac-frontpage-stylesheet', WPPR_URL . '/css/frontpage.css', array(), WPPR_LITE_VERSION); wp_enqueue_script('pie-chart', WPPR_URL . '/javascript/pie-chart.js', array("jquery"), WPPR_LITE_VERSION, true); wp_enqueue_script('cwp-pac-main-script', WPPR_URL . '/javascript/main.js', array("jquery", 'pie-chart'), WPPR_LITE_VERSION, true); if ($id == "") { $id = $post->ID; } $cwp_review_stored_meta = get_post_meta($id); $return_string = ""; if (@$cwp_review_stored_meta['cwp_meta_box_check'][0] == 'Yes') { $return_string = '<section id="review-statistics" class="article-section" itemscope itemtype="http://schema.org/Review"> <div class="review-wrap-up cwpr_clearfix" > <div class="cwpr-review-top cwpr_clearfix" itemprop="itemReviewed"> <h2 class="cwp-item" itemprop="name" >' . get_post_meta($id, "cwp_rev_product_name", true) . '</h2> <span class="cwp-item-price cwp-item" >' . get_post_meta($id, "cwp_rev_price", true) . '</span> </div><!-- end .cwpr-review-top --> <div class="review-wu-left"> <div class="rev-wu-image">'; $product_image = get_post_meta($id, "cwp_rev_product_image", true); $imgurl = get_post_meta($id, "cwp_image_link", true); $lightbox = ""; if ($imgurl == "image") { $feat_image = wp_get_attachment_url(get_post_thumbnail_id($id)); if (cwppos("cwppos_lighbox") == "no") { $lightbox = 'data-lightbox="' . $feat_image . '"'; wp_enqueue_script("img-lightbox", WPPR_URL . '/javascript/lightbox.min.js', array(), WPPR_LITE_VERSION, array()); wp_enqueue_style("img-lightbox-css", WPPR_URL . '/css/lightbox.css', array(), WPPR_LITE_VERSION); } } else { $feat_image = get_post_meta($id, "cwp_product_affiliate_link", true); } if (!empty($product_image)) { $product_image = wppr_get_image_id($id, $product_image); } else { $product_image = wppr_get_image_id($id); } $return_string .= '<a href="' . $feat_image . '" ' . $lightbox . ' rel="nofollow"><img src="' . $product_image . '" alt="' . get_post_meta($id, "cwp_rev_product_name", true) . '" class="photo photo-wrapup wppr-product-image" style="visibility:hidden"/></a>'; $rating = cwppos_calc_overall_rating($id); for ($i = 1; $i <= cwppos("cwppos_option_nr"); $i++) { ${"option" . $i . "_content"} = get_post_meta($id, "option_" . $i . "_content", true); if (empty(${"option" . $i . "_content"})) { ${"option" . $i . "_content"} = __("Default Feature " . $i, "cwppos"); } } $commentNr = get_comments_number($id) + 1; $divrating = $rating['overall'] / 10; $return_string .= '</div><!-- end .rev-wu-image --> <div class="review-wu-grade"> <div class="cwp-review-chart"> <meta itemprop="datePublished" datetime="' . get_the_time("Y-m-d", $id) . '"> <span itemprop="author" itemscope itemtype="http://schema.org/Person" display="none" > <meta itemprop="name" content="' . get_the_author() . '"> </span>'; if (cwppos("cwppos_infl_userreview") == 0) { $return_string .= '<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating" class="cwp-review-percentage" data-percent="'; $return_string .= $rating['overall'] . '"><span itemprop="ratingValue" class="cwp-review-rating">' . $divrating . '</span> </div>'; } else { $return_string .= '<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating" class="cwp-review-percentage" data-percent="'; $return_string .= $rating['overall'] . '"><span itemprop="ratingValue" class="cwp-review-rating">' . $divrating . '</span><meta itemprop="bestRating" content = "10"/> <meta itemprop="reviewCount" content="' . $commentNr . '"> </div>'; } $return_string .= ' </div><!-- end .chart --> </div><!-- end .review-wu-grade --> <div class="review-wu-bars">'; for ($i = 1; $i <= cwppos("cwppos_option_nr"); $i++) { if (!empty(${'option' . $i . '_content'}) && isset($rating['option' . $i]) && (!empty($rating['option' . $i]) || $rating['option' . $i] === '0') && strtoupper(${'option' . $i . '_content'}) != 'DEFAULT FEATURE ' . $i) { $return_string .= '<div class="rev-option" data-value=' . $rating['option' . $i] . '> <div class="cwpr_clearfix"> <h3>' . ${'option' . $i . '_content'} . '</h3> <span>' . $rating['option' . $i] . '/10</span> </div> <ul class="cwpr_clearfix"></ul> </div>'; } } $return_string .= ' </div><!-- end .review-wu-bars --> </div><!-- end .review-wu-left --> <div class="review-wu-right"> <div class="pros">'; for ($i = 1; $i <= cwppos("cwppos_option_nr"); $i++) { ${"pro_option_" . $i} = get_post_meta($id, "cwp_option_" . $i . "_pro", true); if (empty(${"pro_option_" . $i})) { ${"pro_option_" . $i} = ""; } } for ($i = 1; $i <= cwppos("cwppos_option_nr"); $i++) { ${"cons_option_" . $i} = get_post_meta($id, "cwp_option_" . $i . "_cons", true); if (empty(${"cons_option_" . $i})) { ${"cons_option_" . $i} = ""; } } $return_string .= '<h2>' . __(cwppos("cwppos_pros_text"), "cwppos") . '</h2> <ul>'; for ($i = 1; $i <= cwppos("cwppos_option_nr"); $i++) { if (!empty(${"pro_option_" . $i})) { $return_string .= ' <li>- ' . ${"pro_option_" . $i} . '</li>'; } } $return_string .= ' </ul> </div><!-- end .pros --> <div class="cons">'; $return_string .= ' <h2>' . __(cwppos("cwppos_cons_text"), "cwppos") . '</h2> <ul>'; for ($i = 1; $i <= cwppos("cwppos_option_nr"); $i++) { if (!empty(${"cons_option_" . $i})) { $return_string .= ' <li>- ' . ${"cons_option_" . $i} . '</li>'; } } $return_string .= ' </ul> </div>'; $return_string .= ' </div><!-- end .review-wu-right --> </div><!-- end .review-wrap-up --> </section><!-- end #review-statistics -->'; if (cwppos("cwppos_show_poweredby") == 'yes' && !class_exists('CWP_PR_PRO_Core')) { $return_string .= '<div style="font-size:12px;width:100%;float:right"><p style="float:right;">Powered by <a href="http://wordpress.org/plugins/wp-product-review/" target="_blank" rel="nofollow" > WP Product Review</a></p></div>'; } $affiliate_text = get_post_meta($id, "cwp_product_affiliate_text", true); $affiliate_link = get_post_meta($id, "cwp_product_affiliate_link", true); $affiliate_text2 = get_post_meta($id, "cwp_product_affiliate_text2", true); $affiliate_link2 = get_post_meta($id, "cwp_product_affiliate_link2", true); if (!empty($affiliate_text2) && !empty($affiliate_link2)) { $bclass = "affiliate-button2 affiliate-button"; } else { $bclass = "affiliate-button"; } if (!empty($affiliate_text) && !empty($affiliate_link)) { $return_string .= '<div class="' . $bclass . '"> <a href="' . $affiliate_link . '" rel="nofollow" target="_blank"><span>' . $affiliate_text . '</span> </a> </div><!-- end .affiliate-button -->'; } if (!empty($affiliate_text2) && !empty($affiliate_link2)) { $return_string .= '<div class="affiliate-button affiliate-button2"> <a href="' . $affiliate_link2 . '" rel="nofollow" target="_blank"><span>' . $affiliate_text2 . '</span> </a> </div><!-- end .affiliate-button -->'; } } return $return_string; }