Version Description
- 2017-09-07
Download this release
Release Info
Developer | codeinwp |
Plugin | WP Product Review Lite |
Version | 3.0.9 |
Comparing to | |
See all releases |
Code changes from version 3.0.8 to 3.0.9
- CHANGELOG.md +8 -0
- assets/css/cwppos-widget-style1.css +1 -0
- assets/css/frontpage.css +1 -1
- includes/admin/layouts/editor-default-tpl.php +6 -5
- includes/admin/models/class-wppr-editor-model.php +6 -5
- includes/admin/models/class-wppr-review-model.php +143 -2
- includes/class-wppr.php +1 -1
- includes/public/layouts/default-tpl.php +9 -5
- includes/public/layouts/rich-json-ld.php +1 -45
- languages/wp-product-review.pot +43 -43
- readme.txt +9 -0
- vendor/autoload.php +1 -1
- vendor/autoload_52.php +1 -1
- vendor/composer/autoload_real.php +5 -5
- vendor/composer/autoload_real_52.php +3 -3
- wp-product-review.php +2 -2
CHANGELOG.md
CHANGED
@@ -1,4 +1,12 @@
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
### v3.0.8 - 2017-09-01
|
3 |
**Changes:**
|
4 |
* Fix for out of memory errors.
|
1 |
|
2 |
+
### v3.0.9 - 2017-09-07
|
3 |
+
**Changes:**
|
4 |
+
* Improved JSON-LD scheme.
|
5 |
+
* Fix for image lightbox link.
|
6 |
+
* FIx for json-ld description when html tags are present.
|
7 |
+
* Fix for widget layout margin when image is used.
|
8 |
+
* Improvements compatibility with various themes.
|
9 |
+
|
10 |
### v3.0.8 - 2017-09-01
|
11 |
**Changes:**
|
12 |
* Fix for out of memory errors.
|
assets/css/cwppos-widget-style1.css
CHANGED
@@ -14,6 +14,7 @@
|
|
14 |
|
15 |
.wppr-prodlist .wppr-prodrow .wppr-prodrowrightadjust {
|
16 |
width: 65%;
|
|
|
17 |
}
|
18 |
|
19 |
.wppr-prodlist .wppr-prodrow .wppr-prodrowright .wppr-rating {
|
14 |
|
15 |
.wppr-prodlist .wppr-prodrow .wppr-prodrowrightadjust {
|
16 |
width: 65%;
|
17 |
+
margin-left: 3%;
|
18 |
}
|
19 |
|
20 |
.wppr-prodlist .wppr-prodrow .wppr-prodrowright .wppr-rating {
|
assets/css/frontpage.css
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
/*
|
2 |
-
Version: 3.0.
|
3 |
*/
|
4 |
#review-statistics {
|
5 |
width: 100%;
|
1 |
/*
|
2 |
+
Version: 3.0.9
|
3 |
*/
|
4 |
#review-statistics {
|
5 |
width: 100%;
|
includes/admin/layouts/editor-default-tpl.php
CHANGED
@@ -4,6 +4,7 @@
|
|
4 |
*
|
5 |
* @package WPPR
|
6 |
* @subpackage Layouts
|
|
|
7 |
* @copyright Copyright (c) 2017, Bogdan Preda
|
8 |
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
9 |
* @since 3.0.0
|
@@ -239,7 +240,7 @@ $check = $review->is_active() ? 'yes' : 'no';
|
|
239 |
</div>
|
240 |
<?php do_action( 'wppr_editor_options_before', $model->post ); ?>
|
241 |
<div class="wppr-review-fieldset wppr-review-options-fields">
|
242 |
-
<ul class="wppr-review-options-list
|
243 |
<?php
|
244 |
|
245 |
$options_nr = $model->wppr_get_option( 'cwppos_option_nr' );
|
@@ -250,7 +251,7 @@ $check = $review->is_active() ? 'yes' : 'no';
|
|
250 |
<?php
|
251 |
echo $html_helper->text(
|
252 |
array(
|
253 |
-
'name' => 'wppr-editor-options-name[]',
|
254 |
'id' => 'wppr-editor-options-name-' . $i,
|
255 |
'value' => $model->get_value( 'wppr-option-name-' . $i ),
|
256 |
'placeholder' => __( 'Option', 'wp-product-review' ) . ' ' . $i,
|
@@ -258,7 +259,7 @@ $check = $review->is_active() ? 'yes' : 'no';
|
|
258 |
);
|
259 |
echo $html_helper->text(
|
260 |
array(
|
261 |
-
'name' => 'wppr-editor-options-value[]',
|
262 |
'id' => 'wppr-editor-options-value-' . $i,
|
263 |
'class' => 'wppr-text wppr-option-number',
|
264 |
'value' => $model->get_value( 'wppr-option-value-' . $i ),
|
@@ -281,7 +282,7 @@ $check = $review->is_active() ? 'yes' : 'no';
|
|
281 |
|
282 |
<?php do_action( 'wppr_editor_pros_before', $model->post ); ?>
|
283 |
<div class="wppr-review-fieldset wppr-review-pros-fields">
|
284 |
-
<ul class="wppr-review-options-list
|
285 |
<?php
|
286 |
$options_nr = $model->wppr_get_option( 'cwppos_option_nr' );
|
287 |
$pros = $review->get_pros();
|
@@ -312,7 +313,7 @@ $check = $review->is_active() ? 'yes' : 'no';
|
|
312 |
<p><?php _e( 'Insert product\'s cons features below.', 'wp-product-review' ); ?></p>
|
313 |
<?php do_action( 'wppr_editor_cons_before', $model->post ); ?>
|
314 |
<div class="wppr-review-fieldset wppr-review-cons-fields">
|
315 |
-
<ul class="wppr-review-options-list
|
316 |
<?php
|
317 |
$options_nr = $model->wppr_get_option( 'cwppos_option_nr' );
|
318 |
$cons = $review->get_cons();
|
4 |
*
|
5 |
* @package WPPR
|
6 |
* @subpackage Layouts
|
7 |
+
* @global $model WPPR_Editor_Model
|
8 |
* @copyright Copyright (c) 2017, Bogdan Preda
|
9 |
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
|
10 |
* @since 3.0.0
|
240 |
</div>
|
241 |
<?php do_action( 'wppr_editor_options_before', $model->post ); ?>
|
242 |
<div class="wppr-review-fieldset wppr-review-options-fields">
|
243 |
+
<ul class="wppr-review-options-list">
|
244 |
<?php
|
245 |
|
246 |
$options_nr = $model->wppr_get_option( 'cwppos_option_nr' );
|
251 |
<?php
|
252 |
echo $html_helper->text(
|
253 |
array(
|
254 |
+
'name' => 'wppr-editor-options-name[' . $i . ']',
|
255 |
'id' => 'wppr-editor-options-name-' . $i,
|
256 |
'value' => $model->get_value( 'wppr-option-name-' . $i ),
|
257 |
'placeholder' => __( 'Option', 'wp-product-review' ) . ' ' . $i,
|
259 |
);
|
260 |
echo $html_helper->text(
|
261 |
array(
|
262 |
+
'name' => 'wppr-editor-options-value[' . $i . ']',
|
263 |
'id' => 'wppr-editor-options-value-' . $i,
|
264 |
'class' => 'wppr-text wppr-option-number',
|
265 |
'value' => $model->get_value( 'wppr-option-value-' . $i ),
|
282 |
|
283 |
<?php do_action( 'wppr_editor_pros_before', $model->post ); ?>
|
284 |
<div class="wppr-review-fieldset wppr-review-pros-fields">
|
285 |
+
<ul class="wppr-review-options-list ">
|
286 |
<?php
|
287 |
$options_nr = $model->wppr_get_option( 'cwppos_option_nr' );
|
288 |
$pros = $review->get_pros();
|
313 |
<p><?php _e( 'Insert product\'s cons features below.', 'wp-product-review' ); ?></p>
|
314 |
<?php do_action( 'wppr_editor_cons_before', $model->post ); ?>
|
315 |
<div class="wppr-review-fieldset wppr-review-cons-fields">
|
316 |
+
<ul class="wppr-review-options-list ">
|
317 |
<?php
|
318 |
$options_nr = $model->wppr_get_option( 'cwppos_option_nr' );
|
319 |
$cons = $review->get_cons();
|
includes/admin/models/class-wppr-editor-model.php
CHANGED
@@ -140,10 +140,11 @@ class WPPR_Editor_Model extends WPPR_Model_Abstract {
|
|
140 |
$options = $this->previous->get_options();
|
141 |
}
|
142 |
}
|
143 |
-
$
|
144 |
-
$
|
145 |
-
$index
|
146 |
-
$
|
|
|
147 |
|
148 |
return isset( $options[ $index ] ) ? $options[ $index ][ $type ] : '';
|
149 |
break;
|
@@ -196,7 +197,7 @@ class WPPR_Editor_Model extends WPPR_Model_Abstract {
|
|
196 |
$options = array();
|
197 |
foreach ( $options_names as $k => $op_name ) {
|
198 |
if ( ! empty( $op_name ) ) {
|
199 |
-
$options[] = array(
|
200 |
'name' => sanitize_text_field( $op_name ),
|
201 |
'value' => sanitize_text_field( isset( $options_values[ $k ] ) ? ( empty( $options_values[ $k ] ) ? 0 : $options_values[ $k ] ) : 0 ),
|
202 |
);
|
140 |
$options = $this->previous->get_options();
|
141 |
}
|
142 |
}
|
143 |
+
$first_key = key( $options );
|
144 |
+
$parts = explode( '-', $key );
|
145 |
+
$index = $parts[ count( $parts ) - 1 ];
|
146 |
+
$index = intval( $index ) - ( $first_key === 0 ? 1 : 0 );
|
147 |
+
$type = $parts[ count( $parts ) - 2 ];
|
148 |
|
149 |
return isset( $options[ $index ] ) ? $options[ $index ][ $type ] : '';
|
150 |
break;
|
197 |
$options = array();
|
198 |
foreach ( $options_names as $k => $op_name ) {
|
199 |
if ( ! empty( $op_name ) ) {
|
200 |
+
$options[ $k ] = array(
|
201 |
'name' => sanitize_text_field( $op_name ),
|
202 |
'value' => sanitize_text_field( isset( $options_values[ $k ] ) ? ( empty( $options_values[ $k ] ) ? 0 : $options_values[ $k ] ) : 0 ),
|
203 |
);
|
includes/admin/models/class-wppr-review-model.php
CHANGED
@@ -697,7 +697,7 @@ class WPPR_Review_Model extends WPPR_Model_Abstract {
|
|
697 |
if ( $comments ) {
|
698 |
$options = array();
|
699 |
foreach ( $comments as $comment ) {
|
700 |
-
$options = array_merge( $options, $comment );
|
701 |
}
|
702 |
|
703 |
if ( count( $options ) != 0 ) {
|
@@ -734,7 +734,13 @@ class WPPR_Review_Model extends WPPR_Model_Abstract {
|
|
734 |
foreach ( $comments as $comment ) {
|
735 |
$options = $this->get_comment_options( $comment );
|
736 |
if ( ! empty( $options ) ) {
|
737 |
-
$valid[] =
|
|
|
|
|
|
|
|
|
|
|
|
|
738 |
}
|
739 |
}
|
740 |
|
@@ -961,4 +967,139 @@ class WPPR_Review_Model extends WPPR_Model_Abstract {
|
|
961 |
return false;
|
962 |
}
|
963 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
964 |
}
|
697 |
if ( $comments ) {
|
698 |
$options = array();
|
699 |
foreach ( $comments as $comment ) {
|
700 |
+
$options = array_merge( $options, $comment['options'] );
|
701 |
}
|
702 |
|
703 |
if ( count( $options ) != 0 ) {
|
734 |
foreach ( $comments as $comment ) {
|
735 |
$options = $this->get_comment_options( $comment );
|
736 |
if ( ! empty( $options ) ) {
|
737 |
+
$valid[ $comment ] = array(
|
738 |
+
'options' => $options,
|
739 |
+
'date' => get_comment_date( '', $comment ),
|
740 |
+
'author' => get_comment_author( $comment ),
|
741 |
+
'title' => wp_strip_all_tags( get_comment_excerpt( $comment ) ),
|
742 |
+
'content' => get_comment_text( $comment ),
|
743 |
+
);
|
744 |
}
|
745 |
}
|
746 |
|
967 |
return false;
|
968 |
}
|
969 |
|
970 |
+
/**
|
971 |
+
* Returns the JSON-LD array.
|
972 |
+
*
|
973 |
+
* @return array The JSON-LD array.
|
974 |
+
*/
|
975 |
+
public function get_json_ld() {
|
976 |
+
$ld = array(
|
977 |
+
'@context' => 'http://schema.org/',
|
978 |
+
'@type' => 'Product',
|
979 |
+
'name' => $this->get_name(),
|
980 |
+
'image' => $this->get_small_thumbnail(),
|
981 |
+
'description' => $this->get_excerpt(),
|
982 |
+
);
|
983 |
+
$ld['offers'] = array(
|
984 |
+
'@type' => 'Offer',
|
985 |
+
'price' => number_format( $this->get_price(), 2 ),
|
986 |
+
'priceCurrency' => $this->get_currency(),
|
987 |
+
'seller' => array(
|
988 |
+
'@type' => 'Person',
|
989 |
+
'name' => $this->get_author(),
|
990 |
+
),
|
991 |
+
);
|
992 |
+
|
993 |
+
$review_default = array(
|
994 |
+
'@type' => 'Review',
|
995 |
+
'reviewRating' => array(
|
996 |
+
'@type' => 'Rating',
|
997 |
+
'bestRating' => '10',
|
998 |
+
'worstRating' => '0',
|
999 |
+
'ratingValue' => number_format( ( $this->get_rating() / 10 ), 2 ),
|
1000 |
+
),
|
1001 |
+
'name' => $this->get_name(),
|
1002 |
+
'reviewBody' => $this->get_content(),
|
1003 |
+
'author' => array(
|
1004 |
+
'@type' => 'Person',
|
1005 |
+
'name' => $this->get_author(),
|
1006 |
+
),
|
1007 |
+
'datePublished' => get_the_time( 'Y-m-d', $this->get_ID() ),
|
1008 |
+
);
|
1009 |
+
|
1010 |
+
if ( $this->wppr_get_option( 'cwppos_show_userreview' ) != 'yes' ) {
|
1011 |
+
$ld['review'] = $review_default;
|
1012 |
+
|
1013 |
+
return $ld;
|
1014 |
+
}
|
1015 |
+
$ld['review'][] = $review_default;
|
1016 |
+
|
1017 |
+
$comments = $this->get_comments_options();
|
1018 |
+
foreach ( $comments as $comment ) {
|
1019 |
+
$ld['review'][] = array(
|
1020 |
+
'@type' => 'Review',
|
1021 |
+
'reviewRating' => array(
|
1022 |
+
'@type' => 'Rating',
|
1023 |
+
'bestRating' => '10',
|
1024 |
+
'worstRating' => '0',
|
1025 |
+
'ratingValue' => number_format( ( $this->rating_by_options( $comment['options'] ) ), 2 ),
|
1026 |
+
),
|
1027 |
+
'name' => $comment['title'],
|
1028 |
+
'reviewBody' => $comment['content'],
|
1029 |
+
'author' => array(
|
1030 |
+
'@type' => 'Person',
|
1031 |
+
'name' => $comment['author'],
|
1032 |
+
),
|
1033 |
+
'datePublished' => get_the_time( 'Y-m-d', $comment['date'] ),
|
1034 |
+
);
|
1035 |
+
}
|
1036 |
+
$ld['aggregateRating'] = array(
|
1037 |
+
'@type' => 'AggregateRating',
|
1038 |
+
'bestRating' => '10',
|
1039 |
+
'worstRating' => '0',
|
1040 |
+
'ratingValue' => number_format( ( $this->get_rating() / 10 ), 2 ),
|
1041 |
+
'reviewCount' => count( $ld['review'] ),
|
1042 |
+
);
|
1043 |
+
|
1044 |
+
return $ld;
|
1045 |
+
}
|
1046 |
+
|
1047 |
+
/**
|
1048 |
+
* Returns the excerpt of the description
|
1049 |
+
*
|
1050 |
+
* @return string The excerpt of description.
|
1051 |
+
*/
|
1052 |
+
public function get_excerpt() {
|
1053 |
+
if ( ! $this->is_active() ) {
|
1054 |
+
return '';
|
1055 |
+
}
|
1056 |
+
$content = $this->get_content();
|
1057 |
+
|
1058 |
+
$excerpt_length = apply_filters( 'excerpt_length', 55 );
|
1059 |
+
|
1060 |
+
return wp_trim_words( $content, $excerpt_length, '' );
|
1061 |
+
}
|
1062 |
+
|
1063 |
+
/**
|
1064 |
+
* Get the review post content.
|
1065 |
+
*
|
1066 |
+
* @return string The review post content.
|
1067 |
+
*/
|
1068 |
+
public function get_content() {
|
1069 |
+
if ( ! $this->is_active() ) {
|
1070 |
+
return '';
|
1071 |
+
}
|
1072 |
+
|
1073 |
+
return apply_filters( 'wppr_excerpt', wp_strip_all_tags( preg_replace( '/<!-- Start WPPR Review -->[\s\S]*?<!-- End WPPR Review -->/', '', apply_filters( 'the_content', get_post_field( 'post_content', $this->get_ID() ) ) ) ), $this->ID, $this );
|
1074 |
+
}
|
1075 |
+
|
1076 |
+
/**
|
1077 |
+
* Get the review author.
|
1078 |
+
*/
|
1079 |
+
public function get_author() {
|
1080 |
+
if ( ! $this->is_active() ) {
|
1081 |
+
return '';
|
1082 |
+
}
|
1083 |
+
|
1084 |
+
$author_id = get_post_field( 'post_author', $this->get_ID() );
|
1085 |
+
|
1086 |
+
return get_the_author_meta( 'display_name', $author_id );
|
1087 |
+
}
|
1088 |
+
|
1089 |
+
/**
|
1090 |
+
* Calculate rating by options pair.
|
1091 |
+
*
|
1092 |
+
* @param array $options Options pair.
|
1093 |
+
*
|
1094 |
+
* @return float|int The rating by options pairs.
|
1095 |
+
*/
|
1096 |
+
public function rating_by_options( $options ) {
|
1097 |
+
if ( empty( $options ) ) {
|
1098 |
+
return 0;
|
1099 |
+
}
|
1100 |
+
|
1101 |
+
return ( array_sum( wp_list_pluck( $options, 'value' ) ) / count( $options ) );
|
1102 |
+
|
1103 |
+
}
|
1104 |
+
|
1105 |
}
|
includes/class-wppr.php
CHANGED
@@ -67,7 +67,7 @@ class WPPR {
|
|
67 |
*/
|
68 |
public function __construct() {
|
69 |
$this->plugin_name = 'wppr';
|
70 |
-
$this->version = '3.0.
|
71 |
|
72 |
$this->load_dependencies();
|
73 |
$this->set_locale();
|
67 |
*/
|
68 |
public function __construct() {
|
69 |
$this->plugin_name = 'wppr';
|
70 |
+
$this->version = '3.0.9';
|
71 |
|
72 |
$this->load_dependencies();
|
73 |
$this->set_locale();
|
includes/public/layouts/default-tpl.php
CHANGED
@@ -13,16 +13,19 @@
|
|
13 |
$price_raw = $review_object->get_price_raw();
|
14 |
|
15 |
$lightbox = '';
|
16 |
-
|
17 |
-
$lightbox = 'data-lightbox="' . esc_url( $review_object->get_small_thumbnail() ) . '"';
|
18 |
-
}
|
19 |
$links = $review_object->get_links();
|
20 |
$multiple_affiliates_class = 'affiliate-button';
|
21 |
$links = array_filter( $links );
|
|
|
22 |
if ( count( $links ) > 1 ) {
|
23 |
$multiple_affiliates_class = 'affiliate-button2 affiliate-button';
|
24 |
}
|
25 |
-
$
|
|
|
|
|
|
|
|
|
26 |
<section id="review-statistics" class="article-section">
|
27 |
<div class="review-wrap-up cwpr_clearfix" >
|
28 |
<div class="cwpr-review-top cwpr_clearfix">
|
@@ -33,7 +36,7 @@ $output = '
|
|
33 |
</div><!-- end .cwpr-review-top -->
|
34 |
<div class="review-wu-left">
|
35 |
<div class="rev-wu-image">
|
36 |
-
<a href="' . esc_url(
|
37 |
</div><!-- end .rev-wu-image -->
|
38 |
<div class="review-wu-grade">
|
39 |
<div class="cwp-review-chart ">
|
@@ -98,3 +101,4 @@ foreach ( $links as $title => $link ) {
|
|
98 |
';
|
99 |
}
|
100 |
}
|
|
13 |
$price_raw = $review_object->get_price_raw();
|
14 |
|
15 |
$lightbox = '';
|
16 |
+
|
|
|
|
|
17 |
$links = $review_object->get_links();
|
18 |
$multiple_affiliates_class = 'affiliate-button';
|
19 |
$links = array_filter( $links );
|
20 |
+
$image_link = reset( $links );
|
21 |
if ( count( $links ) > 1 ) {
|
22 |
$multiple_affiliates_class = 'affiliate-button2 affiliate-button';
|
23 |
}
|
24 |
+
if ( $review_object->get_click() == 'image' ) {
|
25 |
+
$lightbox = 'data-lightbox="' . esc_url( $review_object->get_small_thumbnail() ) . '"';
|
26 |
+
$image_link = $review_object->get_image();
|
27 |
+
}
|
28 |
+
$output = '<!-- Start WPPR Review -->
|
29 |
<section id="review-statistics" class="article-section">
|
30 |
<div class="review-wrap-up cwpr_clearfix" >
|
31 |
<div class="cwpr-review-top cwpr_clearfix">
|
36 |
</div><!-- end .cwpr-review-top -->
|
37 |
<div class="review-wu-left">
|
38 |
<div class="rev-wu-image">
|
39 |
+
<a href="' . esc_url( $image_link ) . '" ' . $lightbox . ' rel="nofollow" target="_blank"><img src="' . esc_attr( $review_object->get_small_thumbnail() ) . '" alt="' . esc_attr( $review_object->get_name() ) . '" class="photo photo-wrapup wppr-product-image" /></a>
|
40 |
</div><!-- end .rev-wu-image -->
|
41 |
<div class="review-wu-grade">
|
42 |
<div class="cwp-review-chart ">
|
101 |
';
|
102 |
}
|
103 |
}
|
104 |
+
$output .= '<!-- End WPPR Review -->';
|
includes/public/layouts/rich-json-ld.php
CHANGED
@@ -11,50 +11,6 @@
|
|
11 |
*/
|
12 |
|
13 |
if ( $review_object->wppr_get_option( 'wppr_rich_snippet' ) == 'yes' ) {
|
14 |
-
$output .= '
|
15 |
-
<script type="application/ld+json">
|
16 |
-
{
|
17 |
-
"@context": "http://schema.org/",
|
18 |
-
"@type": "Product",
|
19 |
-
"name": "' . $review_object->get_name() . '",
|
20 |
-
"image": "' . $review_object->get_small_thumbnail() . '",
|
21 |
-
"description": "' . get_the_excerpt( $review_object->get_ID() ) . '",';
|
22 |
-
$comments = $review_object->get_comments_options();
|
23 |
-
if ( intval( $review_object->wppr_get_option( 'cwppos_infl_userreview' ) ) > 0 && count( $comments ) > 0 ) {
|
24 |
-
$output .= '"aggregateRating": {
|
25 |
-
"@type": "AggregateRating",
|
26 |
-
"bestRating": "10",
|
27 |
-
"worstRating": "1",
|
28 |
-
"ratingValue": "' . number_format( ( $review_object->get_rating() / 10 ), 2 ) . '",
|
29 |
-
"reviewCount": "' . count( $comments ) . '"
|
30 |
-
},';
|
31 |
-
} else {
|
32 |
-
$output .= '
|
33 |
-
"review": {
|
34 |
-
"@type": "Review",
|
35 |
-
"reviewRating": {
|
36 |
-
"@type": "Rating",
|
37 |
-
"bestRating": "10",
|
38 |
-
"worstRating": "1",
|
39 |
-
"ratingValue": "' . number_format( ( $review_object->get_rating() / 10 ), 2 ) . '"
|
40 |
-
},
|
41 |
-
"name": "' . $review_object->get_name() . '",
|
42 |
-
"author": {
|
43 |
-
"@type": "Person",
|
44 |
-
"name": "' . get_the_author() . '"
|
45 |
-
},
|
46 |
-
"datePublished": "' . get_the_time( 'Y-m-d', $review_object->get_ID() ) . '"
|
47 |
-
},';
|
48 |
-
}
|
49 |
$output .= '
|
50 |
-
|
51 |
-
"@type": "Offer",
|
52 |
-
"price": "' . number_format( $review_object->get_price(), 2 ) . '",
|
53 |
-
"priceCurrency": "' . $review_object->get_currency() . '",
|
54 |
-
"seller": {
|
55 |
-
"@type": "Person",
|
56 |
-
"name": "' . get_the_author() . '"
|
57 |
-
}
|
58 |
-
}
|
59 |
-
}</script>';
|
60 |
}
|
11 |
*/
|
12 |
|
13 |
if ( $review_object->wppr_get_option( 'wppr_rich_snippet' ) == 'yes' ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
$output .= '
|
15 |
+
<script type="application/ld+json">' . json_encode( $review_object->get_json_ld() ) . '</script>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
}
|
languages/wp-product-review.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the no.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: WP Product Review Lite 3.0.
|
6 |
"Report-Msgid-Bugs-To: https://github.com/Codeinwp/wp-product-review/issues\n"
|
7 |
-
"POT-Creation-Date: 2017-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -99,7 +99,7 @@ msgstr ""
|
|
99 |
#: includes/admin/class-wppr-global-settings.php:143
|
100 |
#: includes/admin/class-wppr-global-settings.php:154
|
101 |
#: includes/admin/class-wppr-global-settings.php:165
|
102 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
103 |
msgid "Yes"
|
104 |
msgstr ""
|
105 |
|
@@ -107,7 +107,7 @@ msgstr ""
|
|
107 |
#: includes/admin/class-wppr-global-settings.php:144
|
108 |
#: includes/admin/class-wppr-global-settings.php:155
|
109 |
#: includes/admin/class-wppr-global-settings.php:166
|
110 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
111 |
msgid "No"
|
112 |
msgstr ""
|
113 |
|
@@ -345,122 +345,122 @@ msgid ""
|
|
345 |
"target=\"_blank\" >add-on</a> in order to change the review icons."
|
346 |
msgstr ""
|
347 |
|
348 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
349 |
msgid "Is this a review post ?"
|
350 |
msgstr ""
|
351 |
|
352 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
353 |
msgid "Product Details"
|
354 |
msgstr ""
|
355 |
|
356 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
357 |
msgid "Specify the general details for the reviewed product."
|
358 |
msgstr ""
|
359 |
|
360 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
361 |
msgid "Product Name"
|
362 |
msgstr ""
|
363 |
|
364 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
365 |
msgid "Product name"
|
366 |
msgstr ""
|
367 |
|
368 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
369 |
msgid "Product Image"
|
370 |
msgstr ""
|
371 |
|
372 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
373 |
msgid "Choose or Upload an Image"
|
374 |
msgstr ""
|
375 |
|
376 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
377 |
msgid "If no image is provided, featured image is used"
|
378 |
msgstr ""
|
379 |
|
380 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
381 |
msgid "Product Image Click"
|
382 |
msgstr ""
|
383 |
|
384 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
385 |
msgid "Show Whole Image"
|
386 |
msgstr ""
|
387 |
|
388 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
389 |
msgid "Open Affiliate link"
|
390 |
msgstr ""
|
391 |
|
392 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
393 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
394 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
395 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
396 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
397 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
398 |
msgid "Affiliate Button Text"
|
399 |
msgstr ""
|
400 |
|
401 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
402 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
403 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
404 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
405 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
406 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
407 |
msgid "Affiliate Link"
|
408 |
msgstr ""
|
409 |
|
410 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
411 |
msgid "Add new link"
|
412 |
msgstr ""
|
413 |
|
414 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
415 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
416 |
msgid "Product Price"
|
417 |
msgstr ""
|
418 |
|
419 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
420 |
msgid "Product Options"
|
421 |
msgstr ""
|
422 |
|
423 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
424 |
msgid "Insert your options and their grades. Grading must be done from 0 to 100."
|
425 |
msgstr ""
|
426 |
|
427 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
428 |
msgid "Preload Info"
|
429 |
msgstr ""
|
430 |
|
431 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
432 |
msgid ""
|
433 |
" In order to be able to automatically load your options from another posts, "
|
434 |
"you need the "
|
435 |
msgstr ""
|
436 |
|
437 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
438 |
msgid "PRO add-on"
|
439 |
msgstr ""
|
440 |
|
441 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
442 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
443 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
444 |
msgid "Option"
|
445 |
msgstr ""
|
446 |
|
447 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
448 |
msgid "Grade"
|
449 |
msgstr ""
|
450 |
|
451 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
452 |
msgid "Pro Features"
|
453 |
msgstr ""
|
454 |
|
455 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
456 |
msgid "Insert product's pro features below."
|
457 |
msgstr ""
|
458 |
|
459 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
460 |
msgid "Cons Features"
|
461 |
msgstr ""
|
462 |
|
463 |
-
#: includes/admin/layouts/editor-default-tpl.php:
|
464 |
msgid "Insert product's cons features below."
|
465 |
msgstr ""
|
466 |
|
2 |
# This file is distributed under the no.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: WP Product Review Lite 3.0.9\n"
|
6 |
"Report-Msgid-Bugs-To: https://github.com/Codeinwp/wp-product-review/issues\n"
|
7 |
+
"POT-Creation-Date: 2017-09-07 13:50:28+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=utf-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
99 |
#: includes/admin/class-wppr-global-settings.php:143
|
100 |
#: includes/admin/class-wppr-global-settings.php:154
|
101 |
#: includes/admin/class-wppr-global-settings.php:165
|
102 |
+
#: includes/admin/layouts/editor-default-tpl.php:32
|
103 |
msgid "Yes"
|
104 |
msgstr ""
|
105 |
|
107 |
#: includes/admin/class-wppr-global-settings.php:144
|
108 |
#: includes/admin/class-wppr-global-settings.php:155
|
109 |
#: includes/admin/class-wppr-global-settings.php:166
|
110 |
+
#: includes/admin/layouts/editor-default-tpl.php:44
|
111 |
msgid "No"
|
112 |
msgstr ""
|
113 |
|
345 |
"target=\"_blank\" >add-on</a> in order to change the review icons."
|
346 |
msgstr ""
|
347 |
|
348 |
+
#: includes/admin/layouts/editor-default-tpl.php:20
|
349 |
msgid "Is this a review post ?"
|
350 |
msgstr ""
|
351 |
|
352 |
+
#: includes/admin/layouts/editor-default-tpl.php:51
|
353 |
msgid "Product Details"
|
354 |
msgstr ""
|
355 |
|
356 |
+
#: includes/admin/layouts/editor-default-tpl.php:52
|
357 |
msgid "Specify the general details for the reviewed product."
|
358 |
msgstr ""
|
359 |
|
360 |
+
#: includes/admin/layouts/editor-default-tpl.php:57
|
361 |
msgid "Product Name"
|
362 |
msgstr ""
|
363 |
|
364 |
+
#: includes/admin/layouts/editor-default-tpl.php:63
|
365 |
msgid "Product name"
|
366 |
msgstr ""
|
367 |
|
368 |
+
#: includes/admin/layouts/editor-default-tpl.php:69
|
369 |
msgid "Product Image"
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: includes/admin/layouts/editor-default-tpl.php:75
|
373 |
msgid "Choose or Upload an Image"
|
374 |
msgstr ""
|
375 |
|
376 |
+
#: includes/admin/layouts/editor-default-tpl.php:80
|
377 |
msgid "If no image is provided, featured image is used"
|
378 |
msgstr ""
|
379 |
|
380 |
+
#: includes/admin/layouts/editor-default-tpl.php:83
|
381 |
msgid "Product Image Click"
|
382 |
msgstr ""
|
383 |
|
384 |
+
#: includes/admin/layouts/editor-default-tpl.php:96
|
385 |
msgid "Show Whole Image"
|
386 |
msgstr ""
|
387 |
|
388 |
+
#: includes/admin/layouts/editor-default-tpl.php:108
|
389 |
msgid "Open Affiliate link"
|
390 |
msgstr ""
|
391 |
|
392 |
+
#: includes/admin/layouts/editor-default-tpl.php:115
|
393 |
+
#: includes/admin/layouts/editor-default-tpl.php:121
|
394 |
+
#: includes/admin/layouts/editor-default-tpl.php:145
|
395 |
+
#: includes/admin/layouts/editor-default-tpl.php:151
|
396 |
+
#: includes/admin/layouts/editor-default-tpl.php:179
|
397 |
+
#: includes/admin/layouts/editor-default-tpl.php:185
|
398 |
msgid "Affiliate Button Text"
|
399 |
msgstr ""
|
400 |
|
401 |
+
#: includes/admin/layouts/editor-default-tpl.php:127
|
402 |
+
#: includes/admin/layouts/editor-default-tpl.php:133
|
403 |
+
#: includes/admin/layouts/editor-default-tpl.php:157
|
404 |
+
#: includes/admin/layouts/editor-default-tpl.php:163
|
405 |
+
#: includes/admin/layouts/editor-default-tpl.php:191
|
406 |
+
#: includes/admin/layouts/editor-default-tpl.php:197
|
407 |
msgid "Affiliate Link"
|
408 |
msgstr ""
|
409 |
|
410 |
+
#: includes/admin/layouts/editor-default-tpl.php:139
|
411 |
msgid "Add new link"
|
412 |
msgstr ""
|
413 |
|
414 |
+
#: includes/admin/layouts/editor-default-tpl.php:211
|
415 |
+
#: includes/admin/layouts/editor-default-tpl.php:217
|
416 |
msgid "Product Price"
|
417 |
msgstr ""
|
418 |
|
419 |
+
#: includes/admin/layouts/editor-default-tpl.php:228
|
420 |
msgid "Product Options"
|
421 |
msgstr ""
|
422 |
|
423 |
+
#: includes/admin/layouts/editor-default-tpl.php:229
|
424 |
msgid "Insert your options and their grades. Grading must be done from 0 to 100."
|
425 |
msgstr ""
|
426 |
|
427 |
+
#: includes/admin/layouts/editor-default-tpl.php:234
|
428 |
msgid "Preload Info"
|
429 |
msgstr ""
|
430 |
|
431 |
+
#: includes/admin/layouts/editor-default-tpl.php:237
|
432 |
msgid ""
|
433 |
" In order to be able to automatically load your options from another posts, "
|
434 |
"you need the "
|
435 |
msgstr ""
|
436 |
|
437 |
+
#: includes/admin/layouts/editor-default-tpl.php:237
|
438 |
msgid "PRO add-on"
|
439 |
msgstr ""
|
440 |
|
441 |
+
#: includes/admin/layouts/editor-default-tpl.php:257
|
442 |
+
#: includes/admin/layouts/editor-default-tpl.php:299
|
443 |
+
#: includes/admin/layouts/editor-default-tpl.php:330
|
444 |
msgid "Option"
|
445 |
msgstr ""
|
446 |
|
447 |
+
#: includes/admin/layouts/editor-default-tpl.php:266
|
448 |
msgid "Grade"
|
449 |
msgstr ""
|
450 |
|
451 |
+
#: includes/admin/layouts/editor-default-tpl.php:280
|
452 |
msgid "Pro Features"
|
453 |
msgstr ""
|
454 |
|
455 |
+
#: includes/admin/layouts/editor-default-tpl.php:281
|
456 |
msgid "Insert product's pro features below."
|
457 |
msgstr ""
|
458 |
|
459 |
+
#: includes/admin/layouts/editor-default-tpl.php:312
|
460 |
msgid "Cons Features"
|
461 |
msgstr ""
|
462 |
|
463 |
+
#: includes/admin/layouts/editor-default-tpl.php:313
|
464 |
msgid "Insert product's cons features below."
|
465 |
msgstr ""
|
466 |
|
readme.txt
CHANGED
@@ -67,6 +67,15 @@ If you wanna learn more about the <a href="http://www.codeinwp.com/blog/fastest-
|
|
67 |
* fr_FR translation by Jacques Soule of http://wordpress-pour-vous.com/
|
68 |
|
69 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
= 3.0.8 - 2017-09-01 =
|
71 |
|
72 |
* Fix for out of memory errors.
|
67 |
* fr_FR translation by Jacques Soule of http://wordpress-pour-vous.com/
|
68 |
|
69 |
== Changelog ==
|
70 |
+
= 3.0.9 - 2017-09-07 =
|
71 |
+
|
72 |
+
* Improved JSON-LD scheme.
|
73 |
+
* Fix for image lightbox link.
|
74 |
+
* FIx for json-ld description when html tags are present.
|
75 |
+
* Fix for widget layout margin when image is used.
|
76 |
+
* Improvements compatibility with various themes.
|
77 |
+
|
78 |
+
|
79 |
= 3.0.8 - 2017-09-01 =
|
80 |
|
81 |
* Fix for out of memory errors.
|
vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit996ebc0bfc279a2bc6cb41ba05661c5d::getLoader();
|
vendor/autoload_52.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit367620a0efc78d5dd5e5acdfa0931b53::getLoader();
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit5d80c55356a9df28e3bba37cae15e986
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
foreach ($map as $namespace => $path) {
|
@@ -42,14 +42,14 @@ class ComposerAutoloaderInit5d80c55356a9df28e3bba37cae15e986
|
|
42 |
|
43 |
$includeFiles = require __DIR__ . '/autoload_files.php';
|
44 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
45 |
-
|
46 |
}
|
47 |
|
48 |
return $loader;
|
49 |
}
|
50 |
}
|
51 |
|
52 |
-
function
|
53 |
{
|
54 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
55 |
require $file;
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit996ebc0bfc279a2bc6cb41ba05661c5d
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit996ebc0bfc279a2bc6cb41ba05661c5d', 'loadClassLoader'), true, true);
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit996ebc0bfc279a2bc6cb41ba05661c5d', 'loadClassLoader'));
|
25 |
|
26 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
foreach ($map as $namespace => $path) {
|
42 |
|
43 |
$includeFiles = require __DIR__ . '/autoload_files.php';
|
44 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
45 |
+
composerRequire996ebc0bfc279a2bc6cb41ba05661c5d($fileIdentifier, $file);
|
46 |
}
|
47 |
|
48 |
return $loader;
|
49 |
}
|
50 |
}
|
51 |
|
52 |
+
function composerRequire996ebc0bfc279a2bc6cb41ba05661c5d($fileIdentifier, $file)
|
53 |
{
|
54 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
55 |
require $file;
|
vendor/composer/autoload_real_52.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real_52.php generated by xrstf/composer-php52
|
4 |
|
5 |
-
class
|
6 |
private static $loader;
|
7 |
|
8 |
public static function loadClassLoader($class) {
|
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit9bbe254b12d96f4e2a2fc88cd8d107f3 {
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new xrstf_Composer52_ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$vendorDir = dirname(dirname(__FILE__));
|
27 |
$baseDir = dirname($vendorDir);
|
2 |
|
3 |
// autoload_real_52.php generated by xrstf/composer-php52
|
4 |
|
5 |
+
class ComposerAutoloaderInit367620a0efc78d5dd5e5acdfa0931b53 {
|
6 |
private static $loader;
|
7 |
|
8 |
public static function loadClassLoader($class) {
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit367620a0efc78d5dd5e5acdfa0931b53', 'loadClassLoader'), true /*, true */);
|
23 |
self::$loader = $loader = new xrstf_Composer52_ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit367620a0efc78d5dd5e5acdfa0931b53', 'loadClassLoader'));
|
25 |
|
26 |
$vendorDir = dirname(dirname(__FILE__));
|
27 |
$baseDir = dirname($vendorDir);
|
wp-product-review.php
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
* Plugin Name: WP Product Review Lite
|
16 |
* Plugin URI: https://themeisle.com/plugins/wp-product-review/
|
17 |
* Description: The highest rated and most complete review plugin, now with rich snippets support. Easily turn your basic posts into in-depth reviews.
|
18 |
-
* Version: 3.0.
|
19 |
* Author: ThemeIsle
|
20 |
* Author URI: https://themeisle.com/
|
21 |
* Requires at least: 3.5
|
@@ -67,7 +67,7 @@ register_deactivation_hook( __FILE__, 'deactivate_wppr' );
|
|
67 |
*/
|
68 |
function run_wppr() {
|
69 |
|
70 |
-
define( 'WPPR_LITE_VERSION', '3.0.
|
71 |
define( 'WPPR_PATH', dirname( __FILE__ ) );
|
72 |
define( 'WPPR_SLUG', 'wppr' );
|
73 |
define( 'WPPR_UPSELL_LINK', 'https://themeisle.com/plugins/wp-product-review/' );
|
15 |
* Plugin Name: WP Product Review Lite
|
16 |
* Plugin URI: https://themeisle.com/plugins/wp-product-review/
|
17 |
* Description: The highest rated and most complete review plugin, now with rich snippets support. Easily turn your basic posts into in-depth reviews.
|
18 |
+
* Version: 3.0.9
|
19 |
* Author: ThemeIsle
|
20 |
* Author URI: https://themeisle.com/
|
21 |
* Requires at least: 3.5
|
67 |
*/
|
68 |
function run_wppr() {
|
69 |
|
70 |
+
define( 'WPPR_LITE_VERSION', '3.0.9' );
|
71 |
define( 'WPPR_PATH', dirname( __FILE__ ) );
|
72 |
define( 'WPPR_SLUG', 'wppr' );
|
73 |
define( 'WPPR_UPSELL_LINK', 'https://themeisle.com/plugins/wp-product-review/' );
|