PixelYourSite – Facebook Pixel (Events, WooCommerce & Easy Digital Downloads) - Version 8.2.18

Version Description

Download this release

Release Info

Developer PixelYourSite
Plugin Icon 128x128 PixelYourSite – Facebook Pixel (Events, WooCommerce & Easy Digital Downloads)
Version 8.2.18
Comparing to
See all releases

Code changes from version 8.2.17 to 8.2.18

facebook-pixel-master.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: PixelYourSite
5
  * Plugin URI: http://www.pixelyoursite.com/
6
  * Description: No coding <strong>Meta Pixel (formerly Facebook Pixel), Facebook Converion API,</strong> and <strong>Google Analytics</strong> install. Track key actions with our Signal event, or configure your own events. WooCommerce and EDD fully supported, with Facebook Dynamic Ads Pixel set-up and Google Analytics Enhanced Ecommerce. Insert any custom script with our Head & Footer option. Add the <strong>Pinterest Tag</strong> with our paid add-on. The PRO version adds support for the Google Ads tag plus a lot of extra stuff. Full support for <strong>ConsentMagic.com</strong>.
7
- * Version: 8.2.17
8
  * Author: PixelYourSite
9
  * Author URI: http://www.pixelyoursite.com
10
  * License: GPLv3
@@ -13,7 +13,7 @@
13
  * Tested up to: 5.9
14
  *
15
  * WC requires at least: 2.6.0
16
- * WC tested up to: 6.2
17
  *
18
  * Text Domain: pys
19
  */
4
  * Plugin Name: PixelYourSite
5
  * Plugin URI: http://www.pixelyoursite.com/
6
  * Description: No coding <strong>Meta Pixel (formerly Facebook Pixel), Facebook Converion API,</strong> and <strong>Google Analytics</strong> install. Track key actions with our Signal event, or configure your own events. WooCommerce and EDD fully supported, with Facebook Dynamic Ads Pixel set-up and Google Analytics Enhanced Ecommerce. Insert any custom script with our Head & Footer option. Add the <strong>Pinterest Tag</strong> with our paid add-on. The PRO version adds support for the Google Ads tag plus a lot of extra stuff. Full support for <strong>ConsentMagic.com</strong>.
7
+ * Version: 8.2.18
8
  * Author: PixelYourSite
9
  * Author URI: http://www.pixelyoursite.com
10
  * License: GPLv3
13
  * Tested up to: 5.9
14
  *
15
  * WC requires at least: 2.6.0
16
+ * WC tested up to: 6.3
17
  *
18
  * Text Domain: pys
19
  */
includes/class-plugin-updater.php CHANGED
@@ -109,12 +109,17 @@ class Plugin_Updater {
109
  }
110
 
111
  $version_info = $this->get_cached_version_info();
112
-
113
  if ( false === $version_info ) {
114
  $version_info = $this->api_request( 'plugin_latest_version',
115
  array( 'slug' => $this->slug, 'beta' => $this->beta ) );
116
-
117
- $this->set_version_info_cache( $version_info );
 
 
 
 
 
118
 
119
  }
120
 
@@ -172,8 +177,12 @@ class Plugin_Updater {
172
  if ( false === $version_info ) {
173
  $version_info = $this->api_request( 'plugin_latest_version',
174
  array( 'slug' => $this->slug, 'beta' => $this->beta ) );
175
-
176
- $this->set_version_info_cache( $version_info );
 
 
 
 
177
  }
178
 
179
  if ( ! is_object( $version_info ) ) {
@@ -286,7 +295,12 @@ class Plugin_Updater {
286
  $api_response = $this->api_request( 'plugin_information', $to_send );
287
 
288
  // Expires in 3 hours
289
- $this->set_version_info_cache( $api_response, $cache_key );
 
 
 
 
 
290
 
291
  if ( false !== $api_response ) {
292
  $_data = $api_response;
@@ -461,8 +475,12 @@ class Plugin_Updater {
461
  $version_info->$key = (array) $section;
462
  }
463
  }
464
-
465
- $this->set_version_info_cache( $version_info, $cache_key );
 
 
 
 
466
 
467
  }
468
 
@@ -489,14 +507,16 @@ class Plugin_Updater {
489
 
490
  }
491
 
492
- public function set_version_info_cache( $value = '', $cache_key = '' ) {
493
 
494
  if ( empty( $cache_key ) ) {
495
  $cache_key = $this->cache_key;
496
  }
497
-
 
 
498
  $data = array(
499
- 'timeout' => strtotime( '+3 hours', current_time( 'timestamp' ) ),
500
  'value' => json_encode( $value )
501
  );
502
 
109
  }
110
 
111
  $version_info = $this->get_cached_version_info();
112
+
113
  if ( false === $version_info ) {
114
  $version_info = $this->api_request( 'plugin_latest_version',
115
  array( 'slug' => $this->slug, 'beta' => $this->beta ) );
116
+
117
+ if($this->slug == "pixelyoursite-pinterest") {
118
+ $timeout = strtotime( '+48 hours', current_time( 'timestamp' ) );
119
+ } else {
120
+ $timeout = strtotime( '+3 hours', current_time( 'timestamp' ) );
121
+ }
122
+ $this->set_version_info_cache( $version_info,"",$timeout );
123
 
124
  }
125
 
177
  if ( false === $version_info ) {
178
  $version_info = $this->api_request( 'plugin_latest_version',
179
  array( 'slug' => $this->slug, 'beta' => $this->beta ) );
180
+ if($this->slug == "pixelyoursite-pinterest") {
181
+ $timeout = strtotime( '+48 hours', current_time( 'timestamp' ) );
182
+ } else {
183
+ $timeout = strtotime( '+3 hours', current_time( 'timestamp' ) );
184
+ }
185
+ $this->set_version_info_cache( $version_info,"",$timeout );
186
  }
187
 
188
  if ( ! is_object( $version_info ) ) {
295
  $api_response = $this->api_request( 'plugin_information', $to_send );
296
 
297
  // Expires in 3 hours
298
+ if($this->slug == "pixelyoursite-pinterest") {
299
+ $timeout = strtotime( '+48 hours', current_time( 'timestamp' ) );
300
+ } else {
301
+ $timeout = strtotime( '+3 hours', current_time( 'timestamp' ) );
302
+ }
303
+ $this->set_version_info_cache( $api_response, $cache_key,$timeout );
304
 
305
  if ( false !== $api_response ) {
306
  $_data = $api_response;
475
  $version_info->$key = (array) $section;
476
  }
477
  }
478
+ if($slag == "pixelyoursite-pinterest") {
479
+ $timeout = strtotime( '+48 hours', current_time( 'timestamp' ) );
480
+ } else {
481
+ $timeout = strtotime( '+3 hours', current_time( 'timestamp' ) );
482
+ }
483
+ $this->set_version_info_cache( $version_info, $cache_key,$timeout );
484
 
485
  }
486
 
507
 
508
  }
509
 
510
+ public function set_version_info_cache( $value = '', $cache_key = '',$timeout = null ) {
511
 
512
  if ( empty( $cache_key ) ) {
513
  $cache_key = $this->cache_key;
514
  }
515
+ if($timeout == null) {
516
+ $timeout = strtotime( '+3 hours', current_time( 'timestamp' ) );
517
+ }
518
  $data = array(
519
+ 'timeout' => $timeout,
520
  'value' => json_encode( $value )
521
  );
522
 
includes/views/html-main-edd.php CHANGED
@@ -76,7 +76,24 @@ if ( ! defined( 'ABSPATH' ) ) {
76
  </div>
77
  </div>
78
 
79
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
80
  <!-- AddToCart -->
81
  <div class="card">
82
  <div class="card-header">
@@ -256,6 +273,8 @@ e&utm_campaign=pro-feature' ); ?>
256
  </div>
257
  </div>
258
  <?php endif; ?>
 
 
259
  <hr>
260
  <!-- Google Dynamic Remarketing Vertical -->
261
  <div class="card card-disabled">
76
  </div>
77
  </div>
78
 
79
+ <!-- Transaction ID -->
80
+ <div class="card ">
81
+ <div class="card-header">
82
+ Transaction ID <?php renderProBadge(); ?> <?php cardCollapseBtn(); ?>
83
+ </div>
84
+ <div class="card-body">
85
+ <div class="row">
86
+ <div class="col-5 form-inline">
87
+ <label>Prefix: </label><?php renderDummyTextInput("Prefix");?>
88
+ </div>
89
+ </div>
90
+ <div class="row mt-3">
91
+ <div class="col">
92
+ <p>Consider adding a prefix for transactions IDs if you use the same tags on multiple websites.</p>
93
+ </div>
94
+ </div>
95
+ </div>
96
+ </div>
97
  <!-- AddToCart -->
98
  <div class="card">
99
  <div class="card-header">
273
  </div>
274
  </div>
275
  <?php endif; ?>
276
+
277
+
278
  <hr>
279
  <!-- Google Dynamic Remarketing Vertical -->
280
  <div class="card card-disabled">
includes/views/html-main-general.php CHANGED
@@ -197,7 +197,7 @@ if ( ! defined( 'ABSPATH' ) ) {
197
  target="_blank">pro version</a>.
198
  <div class="small">TikTok Tag integration is in beta.</div>
199
  <div class="mt-3">
200
- How to install the TikTok tag and how to get the ID: <a href="https://www.youtube.com/watch?v=vWRZc66eaPo" target="_blank">watch video</a>
201
  </div>
202
  </div>
203
  </div>
@@ -240,6 +240,8 @@ if ( ! defined( 'ABSPATH' ) ) {
240
  <p><a href="https://www.youtube.com/watch?v=JUuss5sewxg" target="_blank">Multiple Google Analytics properties on WordPress and WooCommerce (6:17) - watch now</a></p>
241
  <p><a href="https://www.youtube.com/watch?v=vWRZc66eaPo" target="_blank">How to install the TikTok Tag on WordPress with PixelYourSite - WooCommerce Support (9:11) - watch now</a></p>
242
  <p><a href="https://www.youtube.com/watch?v=3soI_Fl0JQw" target="_blank">Facebook Event Matching and EMQ: How to IMPROVE it</a></p>
 
 
243
  </div>
244
  </div>
245
  <div class="row">
197
  target="_blank">pro version</a>.
198
  <div class="small">TikTok Tag integration is in beta.</div>
199
  <div class="mt-3">
200
+ How to install the TikTok tag and how to get the ID: <a href="https://www.youtube.com/watch?v=zkb67djRnd0" target="_blank">watch video</a>
201
  </div>
202
  </div>
203
  </div>
240
  <p><a href="https://www.youtube.com/watch?v=JUuss5sewxg" target="_blank">Multiple Google Analytics properties on WordPress and WooCommerce (6:17) - watch now</a></p>
241
  <p><a href="https://www.youtube.com/watch?v=vWRZc66eaPo" target="_blank">How to install the TikTok Tag on WordPress with PixelYourSite - WooCommerce Support (9:11) - watch now</a></p>
242
  <p><a href="https://www.youtube.com/watch?v=3soI_Fl0JQw" target="_blank">Facebook Event Matching and EMQ: How to IMPROVE it</a></p>
243
+ <p><a href="https://www.youtube.com/watch?v=zkb67djRnd0" target="_blank">FIX IT: PixelYourSite high number of admin-ajax requests (9:04) - watch now</a></p>
244
+
245
  </div>
246
  </div>
247
  <div class="row">
includes/views/html-main-woo.php CHANGED
@@ -81,7 +81,40 @@ use PixelYourSite\Facebook\Helpers;
81
  </div>
82
  </div>
83
 
 
 
 
 
 
 
 
 
 
 
84
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  <!-- AddToCart -->
86
  <div class="card">
87
  <div class="card-header">
@@ -1552,6 +1585,57 @@ e&utm_campaign=pro-feature' ); ?>
1552
  </div>
1553
  </div>
1554
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1555
  <hr>
1556
  <div class="row justify-content-center">
1557
  <div class="col-4">
81
  </div>
82
  </div>
83
 
84
+ <!-- video -->
85
+ <div class="card card-static">
86
+ <div class="card-header">
87
+ Recommended Videos:
88
+ </div>
89
+ <div class="card-body">
90
+ <div class="row">
91
+ <div class="col">
92
+ <p>WooCommerce AddToCart Event FIX (4:46 min) - <a href="https://www.youtube.com/watch?v=oZoAu8a0PNg" target="_blank">watch now</a></p>
93
+ <p>Improve WooCommerce Facebook Ads performance with OFFLINE CONVERSIONS (11:38) - <a href="https://www.youtube.com/watch?v=vNsiWh0cakA" target="_blank">watch now</a></p>
94
 
95
+ </div>
96
+ </div>
97
+ </div>
98
+ </div>
99
+
100
+ <!-- Transaction ID -->
101
+ <div class="card ">
102
+ <div class="card-header">
103
+ Transaction ID <?php renderProBadge(); ?> <?php cardCollapseBtn(); ?>
104
+ </div>
105
+ <div class="card-body">
106
+ <div class="row">
107
+ <div class="col-5 form-inline">
108
+ <label>Prefix: </label><?php renderDummyTextInput("Prefix");?>
109
+ </div>
110
+ </div>
111
+ <div class="row mt-3">
112
+ <div class="col">
113
+ <p>Consider adding a prefix for transactions IDs if you use the same tags on multiple websites.</p>
114
+ </div>
115
+ </div>
116
+ </div>
117
+ </div>
118
  <!-- AddToCart -->
119
  <div class="card">
120
  <div class="card-header">
1585
  </div>
1586
  </div>
1587
 
1588
+ <div class="card">
1589
+ <div class="card-header">
1590
+ Export transactions as offline conversions - Facebook (Meta)
1591
+ <?php renderProBadge( 'https://www.pixelyoursite.com/google-analytics?utm_source=pys-free-plugin&utm_medium=pro-badge&utm_campaign=pro-feature' ); ?>
1592
+ <?php cardCollapseBtn(); ?>
1593
+ </div>
1594
+ <div class="card-body">
1595
+ <div class="row mb-1">
1596
+ <div class="col">
1597
+ <p>Learn how to use it: <a href="https://www.youtube.com/watch?v=vNsiWh0cakA" target="_blank">watch video</a></p>
1598
+ </div>
1599
+ </div>
1600
+ <div class="row mb-4">
1601
+ <div class="col form-inline">
1602
+
1603
+ <label style="margin-bottom: 10px;margin-right: 5px">Order status:</label>
1604
+ <?php
1605
+ $allStatus = wc_get_order_statuses();
1606
+ foreach ($allStatus as $key => $label) :
1607
+ $checked = "";
1608
+ if($key == "wc-completed") {
1609
+ $checked = "checked";
1610
+ } ?>
1611
+ <label style="margin-bottom: 5px;margin-right: 5px">
1612
+ <input style="margin-right: 5px" type="checkbox" <?=$checked?> class="order_status" value="<?=$key?>" name="order_status[]">
1613
+ <?=$label?></label>
1614
+
1615
+ <?php endforeach; ?>
1616
+ </div>
1617
+ </div>
1618
+
1619
+ <div class="row">
1620
+ <div class="col form-inline">
1621
+ <label>Select</label>
1622
+
1623
+ <select class="form-control-sm" id="woo_export_purchase" >
1624
+ <option value="export_last_time" selected="selected">Export from last time</option>
1625
+ <option value="export_by_date">Export by dates</option>
1626
+ <option value="export_all" >Export all orders</option>
1627
+ </select>
1628
+
1629
+ </div>
1630
+ </div>
1631
+
1632
+ <div class="row mt-4">
1633
+ <div class="col-3">
1634
+ <a href="#" target="_blank" class="btn btn-sm btn-block btn-primary disabled" disabled id="woo_generate_export">Create export</a>
1635
+ </div>
1636
+ </div>
1637
+ </div>
1638
+ </div>
1639
  <hr>
1640
  <div class="row justify-content-center">
1641
  <div class="col-4">
modules/facebook/facebook.php CHANGED
@@ -115,7 +115,10 @@ class Facebook extends Settings implements Pixel {
115
  if(count($pixelIds) > 0) {
116
  $pixelEvent = clone $event;
117
  if($this->addParamsToEvent($pixelEvent)) {
118
- $pixelEvent->addPayload([ 'pixelIds' => $pixelIds ]);
 
 
 
119
  $pixelEvents[] = $pixelEvent;
120
  }
121
  }
@@ -368,12 +371,7 @@ class Facebook extends Settings implements Pixel {
368
 
369
 
370
  }
371
- if($isActive) {
372
 
373
- if($this->isServerApiEnabled()) {
374
- $event->payload['eventID'] = EventIdGenerator::guidv4();
375
- }
376
- }
377
  return $isActive;
378
  }
379
 
115
  if(count($pixelIds) > 0) {
116
  $pixelEvent = clone $event;
117
  if($this->addParamsToEvent($pixelEvent)) {
118
+ $pixelEvent->addPayload([
119
+ 'pixelIds' => $pixelIds,
120
+ 'eventID' => EventIdGenerator::guidv4()
121
+ ]);
122
  $pixelEvents[] = $pixelEvent;
123
  }
124
  }
371
 
372
 
373
  }
 
374
 
 
 
 
 
375
  return $isActive;
376
  }
377
 
pixelyoursite.php CHANGED
@@ -4,7 +4,7 @@ if ( ! defined( 'ABSPATH' ) ) {
4
  exit; // Exit if accessed directly.
5
  }
6
 
7
- define( 'PYS_FREE_VERSION', '8.2.17' );
8
  define( 'PYS_FREE_PINTEREST_MIN_VERSION', '3.2.5' );
9
  define( 'PYS_FREE_BING_MIN_VERSION', '2.2.2' );
10
  define( 'PYS_FREE_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
4
  exit; // Exit if accessed directly.
5
  }
6
 
7
+ define( 'PYS_FREE_VERSION', '8.2.18' );
8
  define( 'PYS_FREE_PINTEREST_MIN_VERSION', '3.2.5' );
9
  define( 'PYS_FREE_BING_MIN_VERSION', '2.2.2' );
10
  define( 'PYS_FREE_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: Meta Pixel, Facebook Pixel, Facebook Conversion API, CAPI, Facebook Pixel
4
  Requires at least: 3.0.1
5
  Requires PHP: 5.4
6
  Tested up to: 5.9
7
- Stable tag: 8.2.17
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -460,6 +460,19 @@ NO, absolutely not! We don't track any type of data about your website. We simpl
460
  == Changelog ==
461
 
462
 
 
 
 
 
 
 
 
 
 
 
 
 
 
463
  = PixelYourSite 8.2.17 =
464
 
465
  * UI changes to reflect some paid features: WooCommerce split advanced purchase tracking for Facebook and Google Analytics.
4
  Requires at least: 3.0.1
5
  Requires PHP: 5.4
6
  Tested up to: 5.9
7
+ Stable tag: 8.2.18
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
460
  == Changelog ==
461
 
462
 
463
+ = PixelYourSite 8.2.18 =
464
+
465
+ * Video links update.
466
+
467
+ * UI update to reflect new paid features (WooCommerce offline conversion export for Facebook, conversion ID prefix for WooCommerce and EDD).
468
+
469
+ * Changes on how updates work for the Pinterest add-on.
470
+
471
+ * WooCommerce 6.3 compatibility check.
472
+
473
+ * Possible bug fixes (post or product editor conflict).
474
+
475
+
476
  = PixelYourSite 8.2.17 =
477
 
478
  * UI changes to reflect some paid features: WooCommerce split advanced purchase tracking for Facebook and Google Analytics.