From 902e211552be9c6c9ed7d10fd8193258b3fc745e Mon Sep 17 00:00:00 2001 From: Stefan Kalscheuer Date: Wed, 20 May 2020 10:26:57 +0200 Subject: [PATCH] postpone jump out on AJAX calls for Statify 1.7 compatibility (#22) Statify 1.7 changed the JS tacking endpoint to WP AJAX, so we must not skip the complete initialization on AJAX calls anymore. The routine now breaks after adding the filter (if necessary). --- README.md | 3 +++ inc/class-statifyblacklist.php | 9 +++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 443086e..bb493fd 100644 --- a/README.md +++ b/README.md @@ -90,6 +90,9 @@ Same for IPv6 prefixes like _2001:db8:a0b:12f0::/64_. ## Changelog ## +### 1.5.1 / unreleased ### +* Fix initialization on AJAX calls for _Statify_ 1.7 compatibility + ### 1.5.0 / 13.05.2020 ### * Minimum required WordPress version is 4.7 * Removed `load_plugin_textdomain()` and `Domain Path` header diff --git a/inc/class-statifyblacklist.php b/inc/class-statifyblacklist.php index abc7780..7045350 100644 --- a/inc/class-statifyblacklist.php +++ b/inc/class-statifyblacklist.php @@ -81,8 +81,8 @@ class StatifyBlacklist { * @return void */ public static function init() { - // Skip on autosave or AJAX. - if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { + // Skip on autosave. + if ( ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) ) { return; } @@ -97,6 +97,11 @@ class StatifyBlacklist { add_filter( 'statify__skip_tracking', array( 'StatifyBlacklist', 'apply_blacklist_filter' ) ); } + // Statify uses WP AJAX as of 1.7, so we need to reach this point. But there are no further admin/cron actions. + if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) { + return; + } + // Admin only filters. if ( is_admin() ) { StatifyBlacklist_Admin::init();