Product Feed PRO for WooCommerce - Version 8.7.0

Version Description

Product variations for Yandex feed where missing the categoryID values in the feed. This bug has been fixed.

Download this release

Release Info

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

Code changes from version 8.6.8 to 8.7.0

classes/class-get-products.php CHANGED
@@ -1305,8 +1305,9 @@ class WooSEA_Get_Products {
1305
  // For Google Product review template
1306
  if (($feed_config['name'] == "Google Product Review") AND (empty($xml->channel))) {
1307
  $product = $xml->addChild('reviews');
1308
-
1309
  foreach ($products as $key => $value){
 
1310
  $expl = "||";
1311
  if(strpos($value['reviews'], $expl)) {
1312
  $review_data = explode("||", $value['reviews']);
@@ -1379,9 +1380,17 @@ class WooSEA_Get_Products {
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")){
@@ -1396,12 +1405,14 @@ class WooSEA_Get_Products {
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');
@@ -1411,12 +1422,14 @@ class WooSEA_Get_Products {
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;
1420
  }
1421
  }
1422
  }
@@ -1439,12 +1452,14 @@ class WooSEA_Get_Products {
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');
@@ -1454,19 +1469,19 @@ class WooSEA_Get_Products {
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;
1463
  }
1464
  }
1465
  }
1466
  }
1467
  }
1468
-
1469
-
1470
  }
1471
  }
1472
  }
@@ -2130,7 +2145,11 @@ class WooSEA_Get_Products {
2130
 
2131
  if (in_array($project_config['name'], $double_categories, TRUE)){
2132
  $cat_alt = array();
2133
- $cat_terms = get_the_terms( $product_data['id'], 'product_cat' );
 
 
 
 
2134
 
2135
  if($cat_terms){
2136
  foreach($cat_terms as $cat_term){
1305
  // For Google Product review template
1306
  if (($feed_config['name'] == "Google Product Review") AND (empty($xml->channel))) {
1307
  $product = $xml->addChild('reviews');
1308
+
1309
  foreach ($products as $key => $value){
1310
+
1311
  $expl = "||";
1312
  if(strpos($value['reviews'], $expl)) {
1313
  $review_data = explode("||", $value['reviews']);
1380
  $yo = $productz->addChild('products');
1381
  $po = $yo->addChild('product');
1382
 
1383
+ $identifiers = array("gtin","mpn","sku","brand");
1384
+
1385
+ // Start determining order of product_ids in the Google review feed
1386
+ $proper_order = array("product_name","gtin","mpn","sku","brand","product_url","review_url","reviews");
1387
+ $order_sorted = array();
1388
+ foreach ($proper_order as &$order_value){
1389
+ $order_sorted[$order_value] = $value[$order_value];
1390
+ }
1391
+ // End
1392
 
1393
+ foreach($order_sorted as $k => $v) {
1394
  if(($k != "product_name") AND ($k != "product_url")){
1395
  if(!in_array($k, $identifiers)){
1396
  if(($k != "reviews") AND ($k != "review_url")){
1405
  } elseif ($k == "mpn"){
1406
  $poim = $poi->addChild('mpns');
1407
  $poim->$k = $v;
1408
+ } elseif ($k == "sku"){
1409
+ $poix = $poi->addChild('skus');
1410
+ $poix->$k = $v;
1411
  } elseif($k == "brand"){
1412
  $poib = $poi->addChild('brands');
1413
  $poib->$k = $v;
1414
  } else {
1415
+ // Do nothing
 
1416
  }
1417
  } else {
1418
  $poi = $po->addChild('product_ids');
1422
  } elseif ($k == "mpn"){
1423
  $poim = $poi->addChild('mpns');
1424
  $poim->$k = $v;
1425
+ } elseif ($k == "sku"){
1426
+ $poix = $poi->addChild('skus');
1427
+ $poix->$k = $v;
1428
  } elseif($k == "brand"){
1429
  $poib = $poi->addChild('brands');
1430
  $poib->$k = $v;
1431
  } else {
1432
+ // Do nothing
 
1433
  }
1434
  }
1435
  }
1452
  } elseif ($k == "mpn"){
1453
  $poim = $poi->addChild('mpns');
1454
  $poim->$k = $v;
1455
+ } elseif($k == "sku"){
1456
+ $poix = $poi->addChild('skus');
1457
+ $poix->$k = $v;
1458
  } elseif($k == "brand"){
1459
  $poib = $poi->addChild('brands');
1460
  $poib->$k = $v;
1461
  } else {
1462
+ // Do nothing
 
1463
  }
1464
  } else {
1465
  $poi = $po->addChild('product_ids');
1469
  } elseif ($k == "mpn"){
1470
  $poim = $poi->addChild('mpns');
1471
  $poim->$k = $v;
1472
+ } elseif ($k == "sku"){
1473
+ $poix = $poi->addChild('skus');
1474
+ $poix->$k = $v;
1475
  } elseif($k == "brand"){
1476
  $poib = $poi->addChild('brands');
1477
  $poib->$k = $v;
1478
  } else {
1479
+ // Do nothing
 
1480
  }
1481
  }
1482
  }
1483
  }
1484
  }
 
 
1485
  }
1486
  }
1487
  }
2145
 
2146
  if (in_array($project_config['name'], $double_categories, TRUE)){
2147
  $cat_alt = array();
2148
+ if($product_data['item_group_id'] > 0){
2149
+ $cat_terms = get_the_terms( $product_data['item_group_id'], 'product_cat' );
2150
+ } else {
2151
+ $cat_terms = get_the_terms( $product_data['id'], 'product_cat' );
2152
+ }
2153
 
2154
  if($cat_terms){
2155
  foreach($cat_terms as $cat_term){
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.6.9',
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.7.1',
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.5
8
- Stable tag: 8.6.9
9
 
10
  == Description ==
11
 
@@ -315,6 +315,13 @@ Questions left or unanswered? Please do not hesitate to contact us at support@ad
315
 
316
  === Changelog ===
317
 
 
 
 
 
 
 
 
318
  = 8.6.9 (2020-09-03) =
319
  * Renamed the Google Local Products Inventory feed Itemid column to id.
320
 
@@ -2763,6 +2770,13 @@ Questions left or unanswered? Please do not hesitate to contact us at support@ad
2763
 
2764
  == Upgrade Notice ==
2765
 
 
 
 
 
 
 
 
2766
  = 8.6.9 =
2767
  Renamed the Google Local Products Inventory feed Itemid column to id.
2768
 
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.5
8
+ Stable tag: 8.7.1
9
 
10
  == Description ==
11
 
315
 
316
  === Changelog ===
317
 
318
+ = 8.7.1 (2020-09-09) =
319
+ * Changed product ids order in the Google product review XML feeds.
320
+ * Tested for WooCommerce 4.5
321
+
322
+ = 8.7.0 (2020-09-04) =
323
+ * Product variations for Yandex feed where missing the categoryID values in the feed. This bug has been fixed.
324
+
325
  = 8.6.9 (2020-09-03) =
326
  * Renamed the Google Local Products Inventory feed Itemid column to id.
327
 
2770
 
2771
  == Upgrade Notice ==
2772
 
2773
+ = 8.7.1 =
2774
+ Changed product ids order in the Google product review XML feeds.
2775
+ Tested for WooCommerce 4.5
2776
+
2777
+ = 8.7.0 =
2778
+ Product variations for Yandex feed where missing the categoryID values in the feed. This bug has been fixed.
2779
+
2780
  = 8.6.9 =
2781
  Renamed the Google Local Products Inventory feed Itemid column to id.
2782
 
woocommerce-sea.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  /**
3
  * Plugin Name: Product Feed PRO for WooCommerce
4
- * Version: 8.6.9
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.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,7 +48,7 @@ if (!defined('ABSPATH')) {
48
  * Plugin versionnumber, please do not override.
49
  * Define some constants
50
  */
51
- define( 'WOOCOMMERCESEA_PLUGIN_VERSION', '8.6.9' );
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.7.1
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.5
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.7.1' );
52
  define( 'WOOCOMMERCESEA_PLUGIN_NAME', 'woocommerce-product-feed-pro' );
53
  define( 'WOOCOMMERCESEA_PLUGIN_NAME_SHORT', 'woo-product-feed-pro' );
54