Product Feed PRO for WooCommerce - Version 8.4.6

Version Description

Changed Google Review XML Schema to 2.3 Re-arranged the product_ids in Google product review feeds Replaced & characters in product names with 'and' for Google product review feeds

Download this release

Release Info

Developer jorisverwater
Plugin Icon 128x128 Product Feed PRO for WooCommerce
Version 8.4.6
Comparing to
See all releases

Code changes from version 8.4.5 to 8.4.6

classes/channels/class-google_product_review.php CHANGED
@@ -23,11 +23,6 @@ class WooSEA_google_product_review {
23
  "format" => "required",
24
  "woo_suggest" => "link",
25
  ),
26
- "brand" => array(
27
- "name" => "brand",
28
- "feed_name" => "brand",
29
- "format" => "required",
30
- ),
31
  "gtin" => array(
32
  "name" => "gtin",
33
  "feed_name" => "gtin",
@@ -44,6 +39,11 @@ class WooSEA_google_product_review {
44
  "format" => "required",
45
  "woo_suggest" => "sku",
46
  ),
 
 
 
 
 
47
  "reviews" => array(
48
  "name" => "reviews",
49
  "feed_name" => "reviews",
23
  "format" => "required",
24
  "woo_suggest" => "link",
25
  ),
 
 
 
 
 
26
  "gtin" => array(
27
  "name" => "gtin",
28
  "feed_name" => "gtin",
39
  "format" => "required",
40
  "woo_suggest" => "sku",
41
  ),
42
+ "brand" => array(
43
+ "name" => "brand",
44
+ "feed_name" => "brand",
45
+ "format" => "required",
46
+ ),
47
  "reviews" => array(
48
  "name" => "reviews",
49
  "feed_name" => "reviews",
classes/class-get-products.php CHANGED
@@ -1257,8 +1257,8 @@ class WooSEA_Get_Products {
1257
  $xml = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><feed></feed>');
1258
  $xml->addAttribute("xmlns:xmlns:vc", 'http://www.w3.org/2007/XMLSchema-versioning');
1259
  $xml->addAttribute("xmlns:xmlns:xsi", 'http://www.w3.org/2001/XMLSchema-instance');
1260
- $xml->addAttribute("xsi:xsi:noNamespaceSchemaLocation", 'http://www.google.com/shopping/reviews/schema/product/2.2/product_reviews.xsd');
1261
- $xml->addChild('version', '2.2');
1262
  $aggregator = $xml->addChild('aggregator');
1263
  $aggregator->addChild('name', htmlspecialchars($feed_config['projectname']));
1264
  $publisher = $xml->addChild('publisher');
@@ -1379,41 +1379,41 @@ class WooSEA_Get_Products {
1379
  $yo = $productz->addChild('products');
1380
  $po = $yo->addChild('product');
1381
 
1382
- $identifiers = array("brand","gtin","mpn","sku");
1383
 
1384
  foreach($value as $k => $v) {
1385
  if(($k != "product_name") AND ($k != "product_url")){
1386
  if(!in_array($k, $identifiers)){
1387
  if(($k != "reviews") AND ($k != "review_url")){
 
1388
  $poa = $po->addChild($k,htmlspecialchars($v));
1389
  }
1390
  } else {
1391
-
1392
  if(isset($po->product_ids)){
1393
- if($k == "brand"){
1394
- $poib = $poi->addChild('brands');
1395
- $poib->$k = $v;
1396
- } elseif ($k == "gtin"){
1397
  $poig = $poi->addChild('gtins');
1398
  $poig->$k = $v;
1399
  } elseif ($k == "mpn"){
1400
  $poim = $poi->addChild('mpns');
1401
  $poim->$k = $v;
 
 
 
1402
  } else {
1403
  $pois = $poi->addChild('skus');
1404
  $pois->$k = $v;
1405
  }
1406
  } else {
1407
  $poi = $po->addChild('product_ids');
1408
- if($k == "brand"){
1409
- $poib = $poi->addChild('brands');
1410
- $poib->$k = $v;
1411
- } elseif ($k == "gtin"){
1412
  $poig = $poi->addChild('gtins');
1413
  $poig->$k = $v;
1414
  } elseif ($k == "mpn"){
1415
  $poim = $poi->addChild('mpns');
1416
  $poim->$k = $v;
 
 
 
1417
  } else {
1418
  $pois = $poi->addChild('skus');
1419
  $pois->$k = $v;
@@ -1428,35 +1428,35 @@ class WooSEA_Get_Products {
1428
  if(($k == "product_name") OR ($k == "product_url")){
1429
  if(!in_array($k, $identifiers)){
1430
  if(($k != "reviews") AND ($k != "review_url")){
1431
- $poa = $po->addChild($k,htmlspecialchars($v));
 
1432
  }
1433
  } else {
1434
-
1435
  if(isset($po->product_ids)){
1436
- if($k == "brand"){
1437
- $poib = $poi->addChild('brands');
1438
- $poib->$k = $v;
1439
- } elseif ($k == "gtin"){
1440
  $poig = $poi->addChild('gtins');
1441
  $poig->$k = $v;
1442
  } elseif ($k == "mpn"){
1443
  $poim = $poi->addChild('mpns');
1444
  $poim->$k = $v;
 
 
 
1445
  } else {
1446
  $pois = $poi->addChild('skus');
1447
  $pois->$k = $v;
1448
  }
1449
  } else {
1450
  $poi = $po->addChild('product_ids');
1451
- if($k == "brand"){
1452
- $poib = $poi->addChild('brands');
1453
- $poib->$k = $v;
1454
- } elseif ($k == "gtin"){
1455
  $poig = $poi->addChild('gtins');
1456
  $poig->$k = $v;
1457
  } elseif ($k == "mpn"){
1458
  $poim = $poi->addChild('mpns');
1459
  $poim->$k = $v;
 
 
 
1460
  } else {
1461
  $pois = $poi->addChild('skus');
1462
  $pois->$k = $v;
1257
  $xml = new SimpleXMLElement('<?xml version="1.0" encoding="utf-8"?><feed></feed>');
1258
  $xml->addAttribute("xmlns:xmlns:vc", 'http://www.w3.org/2007/XMLSchema-versioning');
1259
  $xml->addAttribute("xmlns:xmlns:xsi", 'http://www.w3.org/2001/XMLSchema-instance');
1260
+ $xml->addAttribute("xsi:xsi:noNamespaceSchemaLocation", 'http://www.google.com/shopping/reviews/schema/product/2.3/product_reviews.xsd');
1261
+ $xml->addChild('version', '2.3');
1262
  $aggregator = $xml->addChild('aggregator');
1263
  $aggregator->addChild('name', htmlspecialchars($feed_config['projectname']));
1264
  $publisher = $xml->addChild('publisher');
1379
  $yo = $productz->addChild('products');
1380
  $po = $yo->addChild('product');
1381
 
1382
+ $identifiers = array("gtin","mpn","brand","sku");
1383
 
1384
  foreach($value as $k => $v) {
1385
  if(($k != "product_name") AND ($k != "product_url")){
1386
  if(!in_array($k, $identifiers)){
1387
  if(($k != "reviews") AND ($k != "review_url")){
1388
+ $v = str_replace("&", "and", $v);
1389
  $poa = $po->addChild($k,htmlspecialchars($v));
1390
  }
1391
  } else {
 
1392
  if(isset($po->product_ids)){
1393
+ if ($k == "gtin"){
 
 
 
1394
  $poig = $poi->addChild('gtins');
1395
  $poig->$k = $v;
1396
  } elseif ($k == "mpn"){
1397
  $poim = $poi->addChild('mpns');
1398
  $poim->$k = $v;
1399
+ } elseif($k == "brand"){
1400
+ $poib = $poi->addChild('brands');
1401
+ $poib->$k = $v;
1402
  } else {
1403
  $pois = $poi->addChild('skus');
1404
  $pois->$k = $v;
1405
  }
1406
  } else {
1407
  $poi = $po->addChild('product_ids');
1408
+ if ($k == "gtin"){
 
 
 
1409
  $poig = $poi->addChild('gtins');
1410
  $poig->$k = $v;
1411
  } elseif ($k == "mpn"){
1412
  $poim = $poi->addChild('mpns');
1413
  $poim->$k = $v;
1414
+ } elseif($k == "brand"){
1415
+ $poib = $poi->addChild('brands');
1416
+ $poib->$k = $v;
1417
  } else {
1418
  $pois = $poi->addChild('skus');
1419
  $pois->$k = $v;
1428
  if(($k == "product_name") OR ($k == "product_url")){
1429
  if(!in_array($k, $identifiers)){
1430
  if(($k != "reviews") AND ($k != "review_url")){
1431
+ $v = str_replace("&", "and", $v);
1432
+ $poa = $po->addChild($k,htmlspecialchars($v));
1433
  }
1434
  } else {
 
1435
  if(isset($po->product_ids)){
1436
+ if ($k == "gtin"){
 
 
 
1437
  $poig = $poi->addChild('gtins');
1438
  $poig->$k = $v;
1439
  } elseif ($k == "mpn"){
1440
  $poim = $poi->addChild('mpns');
1441
  $poim->$k = $v;
1442
+ } elseif($k == "brand"){
1443
+ $poib = $poi->addChild('brands');
1444
+ $poib->$k = $v;
1445
  } else {
1446
  $pois = $poi->addChild('skus');
1447
  $pois->$k = $v;
1448
  }
1449
  } else {
1450
  $poi = $po->addChild('product_ids');
1451
+ if ($k == "gtin"){
 
 
 
1452
  $poig = $poi->addChild('gtins');
1453
  $poig->$k = $v;
1454
  } elseif ($k == "mpn"){
1455
  $poim = $poi->addChild('mpns');
1456
  $poim->$k = $v;
1457
+ } elseif($k == "brand"){
1458
+ $poib = $poi->addChild('brands');
1459
+ $poib->$k = $v;
1460
  } else {
1461
  $pois = $poi->addChild('skus');
1462
  $pois->$k = $v;
js/woosea_key.js CHANGED
@@ -27,7 +27,7 @@ jQuery(document).ready(function($) {
27
  var license_key = $('#license-key').val();
28
 
29
  jQuery.ajax({
30
- url: 'https://www.adtribes.io/check/license.php?key=' + license_key + '&email=' + license_email + '&domain=' + root_domain + '&version=8.4.5',
31
  jsonp: 'callback',
32
  dataType: 'jsonp',
33
  type: 'GET',
27
  var license_key = $('#license-key').val();
28
 
29
  jQuery.ajax({
30
+ url: 'https://www.adtribes.io/check/license.php?key=' + license_key + '&email=' + license_email + '&domain=' + root_domain + '&version=8.4.6',
31
  jsonp: 'callback',
32
  dataType: 'jsonp',
33
  type: 'GET',
readme.txt CHANGED
@@ -5,7 +5,7 @@ License URI: http://www.gnu.org/licenses/gpl.html
5
  Tags: Product Feed, Google Shopping, Google Shopping Feed, WooCommerce Product Feed, WooCommerce Product Feed PRO, Bing Shopping, Bing product feed, Bing remarking, Google Merchant Feed, Google DRM Feed, Google Dynamic Remarketing Feed, Facebook feed, Google feed, Bing feed, Facebook Product Feed, Facebook Dynamic remarketing, Data Feed, WooCommerce Feed, XML product feed, CSV product feed, TSV, TXT product feed, comparison shopping engines, comparison shopping websites, vergelijk.nl, vergelijk.be, vertaa.fi, beslist.nl, kieskeurig.nl, bol.com, raketten, pricerunner, pricegrabber, Buy, leGuide, Kelkoo, Twenga, Yandex, Etsy, Dealtime, Shopzilla, Billiger, Google Product Review feed
6
  Requires at least: 4.5
7
  Tested up to: 5.4
8
- Stable tag: 8.4.5
9
 
10
  == Description ==
11
 
@@ -313,6 +313,11 @@ Questions left or unanswered? Please do not hesitate to contact us at support@ad
313
 
314
  === Changelog ===
315
 
 
 
 
 
 
316
  = 8.4.5 (2020-07-09) =
317
  * Fixed support for Bing Shopping feeds
318
 
@@ -2687,6 +2692,11 @@ Questions left or unanswered? Please do not hesitate to contact us at support@ad
2687
 
2688
  == Upgrade Notice ==
2689
 
 
 
 
 
 
2690
  = 8.4.5 =
2691
  Fixed support for Bing Shopping feeds
2692
 
5
  Tags: Product Feed, Google Shopping, Google Shopping Feed, WooCommerce Product Feed, WooCommerce Product Feed PRO, Bing Shopping, Bing product feed, Bing remarking, Google Merchant Feed, Google DRM Feed, Google Dynamic Remarketing Feed, Facebook feed, Google feed, Bing feed, Facebook Product Feed, Facebook Dynamic remarketing, Data Feed, WooCommerce Feed, XML product feed, CSV product feed, TSV, TXT product feed, comparison shopping engines, comparison shopping websites, vergelijk.nl, vergelijk.be, vertaa.fi, beslist.nl, kieskeurig.nl, bol.com, raketten, pricerunner, pricegrabber, Buy, leGuide, Kelkoo, Twenga, Yandex, Etsy, Dealtime, Shopzilla, Billiger, Google Product Review feed
6
  Requires at least: 4.5
7
  Tested up to: 5.4
8
+ Stable tag: 8.4.6
9
 
10
  == Description ==
11
 
313
 
314
  === Changelog ===
315
 
316
+ = 8.4.6 (2020-07-10) =
317
+ * Changed Google Review XML Schema to 2.3
318
+ * Re-arranged the product_ids in Google product review feeds
319
+ * Replaced & characters in product names with 'and' for Google product review feeds
320
+
321
  = 8.4.5 (2020-07-09) =
322
  * Fixed support for Bing Shopping feeds
323
 
2692
 
2693
  == Upgrade Notice ==
2694
 
2695
+ = 8.4.6 =
2696
+ Changed Google Review XML Schema to 2.3
2697
+ Re-arranged the product_ids in Google product review feeds
2698
+ Replaced & characters in product names with 'and' for Google product review feeds
2699
+
2700
  = 8.4.5 =
2701
  Fixed support for Bing Shopping feeds
2702
 
woocommerce-sea.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  /**
3
  * Plugin Name: Product Feed PRO for WooCommerce
4
- * Version: 8.4.5
5
  * Plugin URI: https://www.adtribes.io/support/?utm_source=wpadmin&utm_medium=plugin&utm_campaign=woosea_product_feed_pro
6
  * Description: Configure and maintain your WooCommerce product feeds for Google Shopping, Facebook, Remarketing, Bing, Yandex, Comparison shopping websites and over a 100 channels more.
7
  * Author: AdTribes.io
@@ -17,7 +17,7 @@
17
  * Domain Path: /languages
18
  *
19
  * WC requires at least: 3.6
20
- * WC tested up to: 4.2
21
  *
22
  * Product Feed PRO for WooCommerce is free software: you can redistribute it and/or modify
23
  * it under the terms of the GNU General Public License as published by
@@ -48,7 +48,7 @@ if (!defined('ABSPATH')) {
48
  * Plugin versionnumber, please do not override.
49
  * Define some constants
50
  */
51
- define( 'WOOCOMMERCESEA_PLUGIN_VERSION', '8.4.5' );
52
  define( 'WOOCOMMERCESEA_PLUGIN_NAME', 'woocommerce-product-feed-pro' );
53
  define( 'WOOCOMMERCESEA_PLUGIN_NAME_SHORT', 'woo-product-feed-pro' );
54
 
1
  <?php
2
  /**
3
  * Plugin Name: Product Feed PRO for WooCommerce
4
+ * Version: 8.4.6
5
  * Plugin URI: https://www.adtribes.io/support/?utm_source=wpadmin&utm_medium=plugin&utm_campaign=woosea_product_feed_pro
6
  * Description: Configure and maintain your WooCommerce product feeds for Google Shopping, Facebook, Remarketing, Bing, Yandex, Comparison shopping websites and over a 100 channels more.
7
  * Author: AdTribes.io
17
  * Domain Path: /languages
18
  *
19
  * WC requires at least: 3.6
20
+ * WC tested up to: 4.3
21
  *
22
  * Product Feed PRO for WooCommerce is free software: you can redistribute it and/or modify
23
  * it under the terms of the GNU General Public License as published by
48
  * Plugin versionnumber, please do not override.
49
  * Define some constants
50
  */
51
+ define( 'WOOCOMMERCESEA_PLUGIN_VERSION', '8.4.6' );
52
  define( 'WOOCOMMERCESEA_PLUGIN_NAME', 'woocommerce-product-feed-pro' );
53
  define( 'WOOCOMMERCESEA_PLUGIN_NAME_SHORT', 'woo-product-feed-pro' );
54