Aruba HiSpeed Cache - Version 1.2.1

Version Description

  • Edit the Bootstrap method to fix the large menu editing problem.
  • Action and filter loading system fixed.
  • Various minor bug fixes and other improvements.
Download this release

Release Info

Developer arubadev
Plugin Icon 128x128 Aruba HiSpeed Cache
Version 1.2.1
Comparing to
See all releases

Code changes from version 1.2.0 to 1.2.1

admin/css/aruba-hispeed-cache-admin-notice.css CHANGED
@@ -1,35 +1,35 @@
1
- :root {
2
- --icon-external-link: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> <g style="stroke:rgb(35,82,124);stroke-width:1"> <line x1="5" y1="5" x2="5" y2="14" /> <line x1="14" y1="9" x2="14" y2="14" /> <line x1="5" y1="14" x2="14" y2="14" /> <line x1="5" y1="5" x2="9" y2="5" /> <line x1="10" y1="2" x2="17" y2="2" /> <line x1="17" y1="2" x2="17" y2="9" /> <line x1="10" y1="9" x2="17" y2="2" style="stroke-width:1.5" /></g></svg>');
3
- }
4
-
5
- #ahsc-service-error {
6
- background: rgba(208, 2, 27, 0.1);
7
- -webkit-box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #d0021b;
8
- box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #d0021b;
9
- }
10
-
11
- #ahsc-service-warning {
12
- background: rgba(245, 166, 35, 0.1);
13
- -webkit-box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #f5a623;
14
- box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #f5a623;
15
- }
16
-
17
- #ahsc-service-error,
18
- #ahsc-service-warning {
19
- border: none;
20
- margin: 15px 0;
21
- padding: 15px;
22
- }
23
-
24
- #ahsc-service-error a,
25
- #ahsc-service-warning a {
26
- text-decoration: none;
27
- font-weight: 500;
28
- }
29
-
30
- #ahsc-service-error a::after,
31
- #ahsc-service-warning a::after {
32
- content: "";
33
- background: no-repeat var(--icon-external-link);
34
- padding-right: 1em;
35
- }
1
+ :root {
2
+ --icon-external-link: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"> <g style="stroke:rgb(35,82,124);stroke-width:1"> <line x1="5" y1="5" x2="5" y2="14" /> <line x1="14" y1="9" x2="14" y2="14" /> <line x1="5" y1="14" x2="14" y2="14" /> <line x1="5" y1="5" x2="9" y2="5" /> <line x1="10" y1="2" x2="17" y2="2" /> <line x1="17" y1="2" x2="17" y2="9" /> <line x1="10" y1="9" x2="17" y2="2" style="stroke-width:1.5" /></g></svg>');
3
+ }
4
+
5
+ #ahsc-service-error {
6
+ background: rgba(208, 2, 27, 0.1);
7
+ -webkit-box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #d0021b;
8
+ box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #d0021b;
9
+ }
10
+
11
+ #ahsc-service-warning {
12
+ background: rgba(245, 166, 35, 0.1);
13
+ -webkit-box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #f5a623;
14
+ box-shadow: 0 1px 2px 0 rgba(63, 63, 68, 0.25), inset 0 3px 0 0 #f5a623;
15
+ }
16
+
17
+ #ahsc-service-error,
18
+ #ahsc-service-warning {
19
+ border: none;
20
+ margin: 15px 0;
21
+ padding: 15px;
22
+ }
23
+
24
+ #ahsc-service-error a,
25
+ #ahsc-service-warning a {
26
+ text-decoration: none;
27
+ font-weight: 500;
28
+ }
29
+
30
+ #ahsc-service-error a::after,
31
+ #ahsc-service-warning a::after {
32
+ content: "";
33
+ background: no-repeat var(--icon-external-link);
34
+ padding-right: 1em;
35
+ }
admin/css/aruba-hispeed-cache-admin.css CHANGED
@@ -1,36 +1,36 @@
1
- .clearfix {
2
- }
3
- .clearfix:before,
4
- .clearfix:after {
5
- content: " ";
6
- display: table;
7
- }
8
- .clearfix:after {
9
- clear: both;
10
- }
11
-
12
- .form-table th,
13
- .form-wrap label {
14
- vertical-align: middle;
15
- }
16
-
17
- .form-table th {
18
- width: 25% !important;
19
- }
20
-
21
- .ahsc-options-wrapper tr td label {
22
- width: 100%;
23
- }
24
-
25
- h2,
26
- h3 {
27
- color: #1d2327 !important;
28
- font-size: 1.3em !important;
29
- margin: 1em 0 !important;
30
- padding: 8px 12px 8px 0px !important;
31
- }
32
-
33
- small::before {
34
- content: "\a";
35
- white-space: pre;
36
- }
1
+ .clearfix {
2
+ }
3
+ .clearfix:before,
4
+ .clearfix:after {
5
+ content: " ";
6
+ display: table;
7
+ }
8
+ .clearfix:after {
9
+ clear: both;
10
+ }
11
+
12
+ .form-table th,
13
+ .form-wrap label {
14
+ vertical-align: middle;
15
+ }
16
+
17
+ .form-table th {
18
+ width: 25% !important;
19
+ }
20
+
21
+ .ahsc-options-wrapper tr td label {
22
+ width: 100%;
23
+ }
24
+
25
+ h2,
26
+ h3 {
27
+ color: #1d2327 !important;
28
+ font-size: 1.3em !important;
29
+ margin: 1em 0 !important;
30
+ padding: 8px 12px 8px 0px !important;
31
+ }
32
+
33
+ small::before {
34
+ content: "\a";
35
+ white-space: pre;
36
+ }
admin/index.php CHANGED
@@ -1,4 +1,4 @@
1
- <?php
2
- /**
3
- * Silence.
4
- */
1
+ <?php
2
+ /**
3
+ * Silence.
4
+ */
admin/js/aruba-hispeed-cache-admin.js CHANGED
@@ -1,33 +1,33 @@
1
- (() => {
2
- "use strict";
3
-
4
- const ahsc_show_option = () => {
5
- let ahsc_enable_purge = document.querySelector("input#ahsc_enable_purge");
6
-
7
- ahsc_enable_purge.addEventListener("change", (e) => {
8
- let form_parts = document.querySelector("form#post_form > div > div").children;
9
-
10
- if (form_parts[1].style.display === "none" && form_parts[2].style.display === "none") {
11
- form_parts[1].style.removeProperty("display");
12
- form_parts[2].style.removeProperty("display");
13
- } else {
14
- form_parts[1].style.display = "none";
15
- form_parts[2].style.display = "none";
16
- }
17
- });
18
- };
19
-
20
- document.addEventListener("DOMContentLoaded", function (event) {
21
- const purge_btn = document.querySelector("a#purgeall");
22
-
23
- purge_btn.addEventListener("click", (e) => {
24
- if (confirm(aruba_hispeed_cache.purge_confirm_string) === true) {
25
- // Continue submitting form.
26
- } else {
27
- e.preventDefault();
28
- }
29
- });
30
-
31
- ahsc_show_option();
32
- });
33
- })();
1
+ (() => {
2
+ "use strict";
3
+
4
+ const ahsc_show_option = () => {
5
+ let ahsc_enable_purge = document.querySelector("input#ahsc_enable_purge");
6
+
7
+ ahsc_enable_purge.addEventListener("change", (e) => {
8
+ let form_parts = document.querySelector("form#post_form > div > div").children;
9
+
10
+ if (form_parts[1].style.display === "none" && form_parts[2].style.display === "none") {
11
+ form_parts[1].style.removeProperty("display");
12
+ form_parts[2].style.removeProperty("display");
13
+ } else {
14
+ form_parts[1].style.display = "none";
15
+ form_parts[2].style.display = "none";
16
+ }
17
+ });
18
+ };
19
+
20
+ document.addEventListener("DOMContentLoaded", function (event) {
21
+ const purge_btn = document.querySelector("a#purgeall");
22
+
23
+ purge_btn.addEventListener("click", (e) => {
24
+ if (confirm(aruba_hispeed_cache.purge_confirm_string) === true) {
25
+ // Continue submitting form.
26
+ } else {
27
+ e.preventDefault();
28
+ }
29
+ });
30
+
31
+ ahsc_show_option();
32
+ });
33
+ })();
admin/partials/admin-display.php CHANGED
@@ -1,24 +1,35 @@
1
- <?php
2
- global $pagenow;
3
- ?>
4
-
5
- <!-- This file should primarily consist of HTML with a little bit of PHP. -->
6
-
7
- <div class="wrap ahsc-wrapper">
8
- <h1 class="ahsc-option-title">
9
- <?php \esc_html_e('Aruba HiSpeed Cache Settings ', 'aruba-hispeed-cache'); ?>
10
- </h1>
11
-
12
- <div id="poststuff">
13
- <div id="post-body" class="metabox-holder columns-2">
14
- <div id="post-body-content">
15
- <?php
16
- require ARUBA_HISPEED_CACHE_BASEPATH . 'admin' .AHSC_DS. 'partials' .AHSC_DS. 'admin-general-options.php';
17
- ?>
18
- </div> <!-- End of #post-body-content -->
19
- <div id="postbox-container-1" class="postbox-container">
20
- <!-- empty sidebar -->
21
- </div> <!-- End of #postbox-container-1 -->
22
- </div> <!-- End of #post-body -->
23
- </div> <!-- End of #poststuff -->
24
- </div> <!-- End of .wrap .ahsc-wrapper -->
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+
13
+ global $pagenow;
14
+ ?>
15
+
16
+ <!-- This file should primarily consist of HTML with a little bit of PHP. -->
17
+
18
+ <div class="wrap ahsc-wrapper">
19
+ <h1 class="ahsc-option-title">
20
+ <?php \esc_html_e('Aruba HiSpeed Cache Settings ', 'aruba-hispeed-cache'); ?>
21
+ </h1>
22
+
23
+ <div id="poststuff">
24
+ <div id="post-body" class="metabox-holder columns-2">
25
+ <div id="post-body-content">
26
+ <?php
27
+ require ARUBA_HISPEED_CACHE_BASEPATH . 'admin' .AHSC_DS. 'partials' .AHSC_DS. 'admin-general-options.php';
28
+ ?>
29
+ </div> <!-- End of #post-body-content -->
30
+ <div id="postbox-container-1" class="postbox-container">
31
+ <!-- empty sidebar -->
32
+ </div> <!-- End of #postbox-container-1 -->
33
+ </div> <!-- End of #post-body -->
34
+ </div> <!-- End of #poststuff -->
35
+ </div> <!-- End of .wrap .ahsc-wrapper -->
admin/partials/admin-general-options.php CHANGED
@@ -1,12 +1,19 @@
1
  <?php
2
  /**
3
- * @see ArubaHiSpeedCache\includes\_settings_manager function
 
 
 
 
 
 
 
4
  */
 
 
5
  $aruba_hispeed_cache_settings = $this->_settings_manager();
6
 
7
- /**
8
- * @see ArubaHiSpeedCache\includes\_check_hispeed_cache_services_realtime function
9
- */
10
  $aruba_hispeed_cache_debugger = $this->_check_hispeed_cache_services_realtime();
11
 
12
  ?>
@@ -17,13 +24,13 @@ $aruba_hispeed_cache_debugger = $this->_check_hispeed_cache_services_realtime();
17
  <div class="inside">
18
  <table class="form-table ahsc-table">
19
  <?php foreach ($this->_form_fields() as $field_sets_key => $field_sets_data) : ?>
20
- <?php if (isset($field_sets_data['title'])) : ?>
21
  </table>
22
  <h2 class="title"><?php echo esc_html($field_sets_data['title']); ?>
23
  </h2>
24
  <table class="form-table ahsc-table">
25
- <?php continue; ?>
26
- <?php endif; ?>
27
 
28
  <tr class="<?php echo esc_html($field_sets_key); ?>">
29
  <th scope="row">
@@ -72,7 +79,7 @@ $aruba_hispeed_cache_debugger = $this->_check_hispeed_cache_services_realtime();
72
  <td>
73
  <?php
74
  \submit_button(__('Save changes', 'aruba-hispeed-cache'), 'primary', 'smart_http_expire_save', false, array('form' => 'post_form'));
75
- ?>
76
  <a id="purgeall"
77
  href="<?php echo \esc_url($this->_generate_purge_nonce()); ?>"
78
  class="button button-secondary">
1
  <?php
2
  /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
  */
12
+
13
+ // @see ArubaHiSpeedCache\includes\_settings_manager function
14
  $aruba_hispeed_cache_settings = $this->_settings_manager();
15
 
16
+ // @see ArubaHiSpeedCache\includes\_check_hispeed_cache_services_realtime function
 
 
17
  $aruba_hispeed_cache_debugger = $this->_check_hispeed_cache_services_realtime();
18
 
19
  ?>
24
  <div class="inside">
25
  <table class="form-table ahsc-table">
26
  <?php foreach ($this->_form_fields() as $field_sets_key => $field_sets_data) : ?>
27
+ <?php if (isset($field_sets_data['title'])) : ?>
28
  </table>
29
  <h2 class="title"><?php echo esc_html($field_sets_data['title']); ?>
30
  </h2>
31
  <table class="form-table ahsc-table">
32
+ <?php continue; ?>
33
+ <?php endif; ?>
34
 
35
  <tr class="<?php echo esc_html($field_sets_key); ?>">
36
  <th scope="row">
79
  <td>
80
  <?php
81
  \submit_button(__('Save changes', 'aruba-hispeed-cache'), 'primary', 'smart_http_expire_save', false, array('form' => 'post_form'));
82
+ ?>
83
  <a id="purgeall"
84
  href="<?php echo \esc_url($this->_generate_purge_nonce()); ?>"
85
  class="button button-secondary">
admin/partials/admin-notice-not-aruba-server.php CHANGED
@@ -1,10 +1,23 @@
1
- <div id="ahsc-service-error" class="notice notice-error">
2
- <p>
3
- <?php
4
- printf(
5
- \wp_kses(__('<strong>The Aruba HiSpeed Cache plugin cannot be used because your WordPress website is not hosted on an Aruba hosting platform.</strong> Buy an <a href="%s" rel="nofollow" target="_blank">Aruba hosting</a> service and migrate your website to use the plugin.', 'aruba-hispeed-cache'), array( 'strong' => array(), 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array()) )),
6
- esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_hosting_truck'))
7
- );
8
- ?>
9
- </p>
10
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+ ?>
13
+
14
+ <div id="ahsc-service-error" class="notice notice-error">
15
+ <p>
16
+ <?php
17
+ printf(
18
+ \wp_kses(__('<strong>The Aruba HiSpeed Cache plugin cannot be used because your WordPress website is not hosted on an Aruba hosting platform.</strong> Buy an <a href="%s" rel="nofollow" target="_blank">Aruba hosting</a> service and migrate your website to use the plugin.', 'aruba-hispeed-cache'), array( 'strong' => array(), 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array()) )),
19
+ esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_hosting_truck'))
20
+ );
21
+ ?>
22
+ </p>
23
+ </div>
admin/partials/admin-notice-purge-completed.php CHANGED
@@ -1,7 +1,20 @@
1
- <div class="updated">
2
- <p>
3
- <?php
4
- \esc_html_e('Purge completed', 'aruba-hispeed-cache');
5
- ?>
6
- </p>
7
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+
13
+ ?>
14
+ <div class="updated">
15
+ <p>
16
+ <?php
17
+ \esc_html_e('Purge completed', 'aruba-hispeed-cache');
18
+ ?>
19
+ </p>
20
+ </div>
admin/partials/admin-notice-service-available.php CHANGED
@@ -1,10 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <div id="ahsc-service-warning" class="notice notice-warning">
2
  <p>
3
- <?php printf(
4
  \wp_kses(__('<strong>The HiSpeed Cache feature is not enabled.</strong> To enable it, go to your domain <a href="%s" rel="nofollow" target="_blank">control panel</a> (verifying the request may take up to 15 minutes). For further details <a href="%s" rel="nofollow" target="_blank">see our guide</a>.', 'aruba-hispeed-cache'), array( 'strong' => array(), 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array()) )),
5
  esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_aruba_pca')),
6
  esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_guide'))
7
  );
8
- ?>
9
  </p>
10
  </div>
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+ ?>
13
+
14
  <div id="ahsc-service-warning" class="notice notice-warning">
15
  <p>
16
+ <?php \printf(
17
  \wp_kses(__('<strong>The HiSpeed Cache feature is not enabled.</strong> To enable it, go to your domain <a href="%s" rel="nofollow" target="_blank">control panel</a> (verifying the request may take up to 15 minutes). For further details <a href="%s" rel="nofollow" target="_blank">see our guide</a>.', 'aruba-hispeed-cache'), array( 'strong' => array(), 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array()) )),
18
  esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_aruba_pca')),
19
  esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_guide'))
20
  );
21
+ ?>
22
  </p>
23
  </div>
admin/partials/admin-notice-service-unavailable.php CHANGED
@@ -1,10 +1,21 @@
1
-
2
- <div id="ahsc-service-error" class="notice notice-error">
3
- <p>
4
- <?php printf(
5
- \wp_kses(__('<strong>The HiSpeed Cache feature, with which the plugin interfaces, is not available on the server that hosts your website.</strong> To use HiSpeed Cache and the plugin, contact <a href="%s" rel="nofollow" target="_blank">support</a>.', 'aruba-hispeed-cache'), array( 'strong' => array(), 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array()) )),
6
- esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_assistance'))
7
- );
8
- ?>
9
- </p>
10
- </div>
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+ ?>
13
+ <div id="ahsc-service-error" class="notice notice-error">
14
+ <p>
15
+ <?php \printf(
16
+ \wp_kses(__('<strong>The HiSpeed Cache feature, with which the plugin interfaces, is not available on the server that hosts your website.</strong> To use HiSpeed Cache and the plugin, contact <a href="%s" rel="nofollow" target="_blank">support</a>.', 'aruba-hispeed-cache'), array( 'strong' => array(), 'a' => array( 'href' => array(), 'target' => array(), 'rel' => array()) )),
17
+ esc_url(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::getLocalizedLink('link_assistance'))
18
+ );
19
+ ?>
20
+ </p>
21
+ </div>
admin/partials/admin-notice-settings-saved.php CHANGED
@@ -1,7 +1,20 @@
1
- <div class="updated">
2
- <p>
3
- <?php
4
- \esc_html_e('Settings saved.', 'aruba-hispeed-cache');
5
- ?>
6
- </p>
7
- </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+ ?>
13
+
14
+ <div class="updated">
15
+ <p>
16
+ <?php
17
+ \esc_html_e('Settings saved.', 'aruba-hispeed-cache');
18
+ ?>
19
+ </p>
20
+ </div>
admin/partials/admin-notice-version.php CHANGED
@@ -1,15 +1,25 @@
1
-
2
- <div id="message" class="error">
3
- <p>
4
- <strong>
5
- <?php
6
- /**
7
- * Printf
8
- */
9
- \printf(
10
- \esc_html__('Sorry, Aruba HiSpeed Cache requires WordPress %s or higher.', 'aruba-hispeed-cache'),
11
- \esc_html(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::ArubaHiSpeedCache_getConfigs('MINIMUM_WP'))
12
- ); ?>
13
- </strong>
14
- </p>
15
- </div>
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * A telmplate frame
4
+ * php version 5.6
5
+ *
6
+ * @category Wordpress-plugin
7
+ * @package Aruba-HiSpeed-Cache
8
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
+ * @link none
11
+ */
12
+ ?>
13
+
14
+ <div id="message" class="error">
15
+ <p>
16
+ <strong>
17
+ <?php
18
+ \printf(
19
+ \esc_html__('Sorry, Aruba HiSpeed Cache requires WordPress %s or higher.', 'aruba-hispeed-cache'),
20
+ \esc_html(ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs::ArubaHiSpeedCache_getConfigs('MINIMUM_WP'))
21
+ );
22
+ ?>
23
+ </strong>
24
+ </p>
25
+ </div>
aruba-hispeed-cache.php CHANGED
@@ -12,7 +12,7 @@
12
  *
13
  * @wordpress-plugin
14
  * Plugin Name: Aruba HiSpeed Cache
15
- * Version: 1.2.0
16
  * Plugin URI: https://hosting.aruba.it/wordpress.aspx
17
  * Description: Aruba HiSpeed Cache interfaces directly with an Aruba hosting platform's HiSpeed Cache service and automates its management.
18
  * Author: Aruba.it
@@ -21,7 +21,7 @@
21
  * Domain Path: /languages
22
  * License: GPL v2
23
  * Requires at least: 5.4
24
- * Tested up to: 6.0
25
  * Requires PHP: 5.6
26
  *
27
  *
@@ -39,16 +39,14 @@
39
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
40
  */
41
 
42
-
43
-
44
  namespace ArubaHiSpeedCache;
45
 
46
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs;
47
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheBootstrap;
48
 
49
- use \register_activation_hook;
50
- use \register_deactivation_hook;
51
- use \defined;
52
 
53
  if (!defined('WPINC')) {
54
  die;
12
  *
13
  * @wordpress-plugin
14
  * Plugin Name: Aruba HiSpeed Cache
15
+ * Version: 1.2.1
16
  * Plugin URI: https://hosting.aruba.it/wordpress.aspx
17
  * Description: Aruba HiSpeed Cache interfaces directly with an Aruba hosting platform's HiSpeed Cache service and automates its management.
18
  * Author: Aruba.it
21
  * Domain Path: /languages
22
  * License: GPL v2
23
  * Requires at least: 5.4
24
+ * Tested up to: 6.1
25
  * Requires PHP: 5.6
26
  *
27
  *
39
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
40
  */
41
 
 
 
42
  namespace ArubaHiSpeedCache;
43
 
44
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs;
45
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheBootstrap;
46
 
47
+ use register_activation_hook;
48
+ use register_deactivation_hook;
49
+ use defined;
50
 
51
  if (!defined('WPINC')) {
52
  die;
includes/ArubaHiSpeedCacheBootstrap.php CHANGED
@@ -13,11 +13,11 @@
13
 
14
  namespace ArubaHiSpeedCache\includes;
15
 
16
- use \esc_html;
17
- use \esc_html__;
18
- use \is_multisite;
19
- use \version_compare;
20
- use \wp_delete_file;
21
 
22
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCachei18n;
23
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheAdmin;
@@ -29,7 +29,6 @@ use ArubaHiSpeedCache\includes\ArubaHispeeCacheLogger as Logger;
29
  if (! class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheBootstrap')) {
30
  class ArubaHiSpeedCacheBootstrap
31
  {
32
-
33
  /**
34
  * Undocumented variable
35
  *
@@ -150,29 +149,29 @@ if (! class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheBootstrap')) {
150
 
151
  $this->loader->add_action('check_ajax_referer', $aruba_hispeed_cache_purger, 'ahsc_check_ajax_referer', 20);
152
 
153
- /**
154
- * If you are on the menu management page, remove the hooks queuing.
155
- *
156
- * @since 1.2.0
157
- */
158
- if (is_admin() && 'nav-menus.php' === $pagenow) {
159
- $this->loader->remove_action('edit_term');
160
- $this->loader->remove_action('transition_post_status');
161
- $this->loader->add_action('wp_update_nav_menu', $aruba_hispeed_cache_purger, 'ahsc_wp_update_nav_menu', 20, 1);
162
- }
163
-
164
  /**
165
  * FES support.
166
  *
167
  * @since 1.2.0
168
  */
169
  if (is_admin()) {
170
- $this->loader->add_action('admin_init', $aruba_hispeed_cache_purger, 'ahsc_deferred_purge_by_transient', 200);
 
 
171
  //
172
  $this->loader->add_action('check_admin_referer', $aruba_hispeed_cache_purger, 'ahsc_bulk_manager', 20, 2);
 
173
 
174
- $this->loader->add_action('post_updated', $aruba_hispeed_cache_purger, 'ahsc_post_updated', 200);
175
- //$this->loader->add_action('wp_after_insert_post', $aruba_hispeed_cache_purger, 'ahsc_post_updated', 200);
 
 
 
 
 
 
 
 
176
  }
177
 
178
  /**
@@ -259,15 +258,15 @@ if (! class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheBootstrap')) {
259
  $notices_file = null;
260
 
261
  switch ($checker->check()) {
262
- case 'available':
263
- $notices_file = 'admin-notice-service-available';
264
- break;
265
- case 'unavailable':
266
- $notices_file = 'admin-notice-service-unavailable';
267
- break;
268
- case 'no-aruba-server':
269
- $notices_file = 'admin-notice-not-aruba-server';
270
- break;
271
  }
272
 
273
  if (\is_multisite() && !is_null($notices_file)) {
@@ -310,18 +309,18 @@ function logger($message, string $name = '', string $livel = 'debug')
310
  }
311
 
312
  switch ($livel) {
313
- case 'debug':
314
- Logger::debug($message, $name);
315
- break;
316
- case 'info':
317
- Logger::info($message, $name);
318
- break;
319
- case 'warning':
320
- Logger::warning($message, $name);
321
- break;
322
- case 'error':
323
- Logger::error($message, $name);
324
- break;
325
  }
326
 
327
  return;
13
 
14
  namespace ArubaHiSpeedCache\includes;
15
 
16
+ use esc_html;
17
+ use esc_html__;
18
+ use is_multisite;
19
+ use version_compare;
20
+ use wp_delete_file;
21
 
22
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCachei18n;
23
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheAdmin;
29
  if (! class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheBootstrap')) {
30
  class ArubaHiSpeedCacheBootstrap
31
  {
 
32
  /**
33
  * Undocumented variable
34
  *
149
 
150
  $this->loader->add_action('check_ajax_referer', $aruba_hispeed_cache_purger, 'ahsc_check_ajax_referer', 20);
151
 
 
 
 
 
 
 
 
 
 
 
 
152
  /**
153
  * FES support.
154
  *
155
  * @since 1.2.0
156
  */
157
  if (is_admin()) {
158
+ //$aruba_hispeed_cache_purger->Logger('wp-json request detected', 'request');
159
+ $this->loader->add_action('admin_init', $aruba_hispeed_cache_purger, 'ahsc_deferred_purge_by_transient');
160
+
161
  //
162
  $this->loader->add_action('check_admin_referer', $aruba_hispeed_cache_purger, 'ahsc_bulk_manager', 20, 2);
163
+ }
164
 
165
+ /**
166
+ * If you are on the menu management page, remove the hooks queuing.
167
+ *
168
+ * @since 1.2.1
169
+ */
170
+ if (is_admin() && 'nav-menus.php' === $pagenow) {
171
+ $this->loader->remove_action('edit_term');
172
+ $this->loader->remove_action('transition_post_status');
173
+ $this->loader->remove_action('post_updated');
174
+ $this->loader->add_action('wp_update_nav_menu', $aruba_hispeed_cache_purger, 'ahsc_wp_update_nav_menu', 20, 1);
175
  }
176
 
177
  /**
258
  $notices_file = null;
259
 
260
  switch ($checker->check()) {
261
+ case 'available':
262
+ $notices_file = 'admin-notice-service-available';
263
+ break;
264
+ case 'unavailable':
265
+ $notices_file = 'admin-notice-service-unavailable';
266
+ break;
267
+ case 'no-aruba-server':
268
+ $notices_file = 'admin-notice-not-aruba-server';
269
+ break;
270
  }
271
 
272
  if (\is_multisite() && !is_null($notices_file)) {
309
  }
310
 
311
  switch ($livel) {
312
+ case 'debug':
313
+ Logger::debug($message, $name);
314
+ break;
315
+ case 'info':
316
+ Logger::info($message, $name);
317
+ break;
318
+ case 'warning':
319
+ Logger::warning($message, $name);
320
+ break;
321
+ case 'error':
322
+ Logger::error($message, $name);
323
+ break;
324
  }
325
 
326
  return;
includes/ArubaHiSpeedCacheConfigs.php CHANGED
@@ -50,7 +50,7 @@ if (! \class_exists('ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs')) {
50
  /**
51
  * PLUGIN_VERSION string
52
  */
53
- public static $PLUGIN_VERSION = '1.2.0';
54
 
55
  /**
56
  * MINIMUM_WP string
50
  /**
51
  * PLUGIN_VERSION string
52
  */
53
+ public static $PLUGIN_VERSION = '1.2.1';
54
 
55
  /**
56
  * MINIMUM_WP string
includes/ArubaHiSpeedCacheLoader.php CHANGED
@@ -11,16 +11,14 @@
11
  * @since 1.0.0
12
  */
13
 
14
-
15
  namespace ArubaHiSpeedCache\includes;
16
 
17
- use \Exception;
18
- use \Throwable;
19
- use \add_action;
20
- use \add_filter;
21
 
22
  if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheLoader')) {
23
-
24
  /**
25
  * ArubaHiSpeedCacheLoader
26
  *
@@ -93,8 +91,11 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheLoader')) {
93
  */
94
  public function remove_action($hook)
95
  {
96
- if (array_key_exists($hook, $this->actions)) {
97
- unset($this->actions[$hook]);
 
 
 
98
  }
99
  }
100
 
@@ -143,8 +144,11 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheLoader')) {
143
  */
144
  public function remove_filter($hook)
145
  {
146
- if (array_key_exists($hook, $this->filters)) {
147
- unset($this->filters[$hook]);
 
 
 
148
  }
149
  }
150
 
11
  * @since 1.0.0
12
  */
13
 
 
14
  namespace ArubaHiSpeedCache\includes;
15
 
16
+ use Exception;
17
+ use Throwable;
18
+ use add_action;
19
+ use add_filter;
20
 
21
  if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheLoader')) {
 
22
  /**
23
  * ArubaHiSpeedCacheLoader
24
  *
91
  */
92
  public function remove_action($hook)
93
  {
94
+ foreach ($this->actions as $action) {
95
+ if ($hook === $action['hook']) {
96
+ $key = array_keys($this->actions, $action);
97
+ unset($this->actions[$key[0]]);
98
+ }
99
  }
100
  }
101
 
144
  */
145
  public function remove_filter($hook)
146
  {
147
+ foreach ($this->filters as $action) {
148
+ if ($hook === $action['hook']) {
149
+ $key = array_keys($this->filters, $action);
150
+ unset($this->filters[$key[0]]);
151
+ }
152
  }
153
  }
154
 
includes/ArubaHiSpeedCachePurger.php CHANGED
@@ -1,27 +1,16 @@
1
  <?php
2
  /**
3
- * ArubaHiSpeedCacheWpPurger
4
- * php version 5.6
5
- *
6
  * @category Project
7
- * @package ArubaHiSpeedCachePurger
8
  * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
  * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
- * @link null
11
- * @since 1.0.0
12
  */
13
 
 
14
  namespace ArubaHiSpeedCache;
15
 
16
  /**
17
- * ArubaHiSpeedCachePurger
18
- *
19
- * @category Project
20
- * @package ArubaHiSpeedCache
21
- * @author Aruba Developer <hispeedcache.developer@aruba.it>
22
- * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
23
- * @link null
24
- * @since 1.0.0
25
  */
26
  abstract class ArubaHiSpeedCachePurger
27
  {
@@ -50,8 +39,7 @@ abstract class ArubaHiSpeedCachePurger
50
  /**
51
  * Purge the cache of a single page
52
  *
53
- * @param string $url The url to purge
54
- *
55
  * @return void
56
  */
57
  abstract public function purgeUrl($url);
@@ -59,8 +47,7 @@ abstract class ArubaHiSpeedCachePurger
59
  /**
60
  * Purge the cache of a list of pages
61
  *
62
- * @param array $urls The urls to purge
63
- *
64
  * @return void
65
  */
66
  abstract public function purgeUrls($urls);
@@ -108,8 +95,7 @@ abstract class ArubaHiSpeedCachePurger
108
  * 'server_port' => string '8889'
109
  * ];
110
  *
111
- * @param array $configs The configs
112
- *
113
  * @return void
114
  */
115
  public function setPurger($configs)
1
  <?php
2
  /**
 
 
 
3
  * @category Project
4
+ * @package Aruba-HiSpeed-Cache
5
  * @author Aruba Developer <hispeedcache.developer@aruba.it>
6
  * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
 
 
7
  */
8
 
9
+
10
  namespace ArubaHiSpeedCache;
11
 
12
  /**
13
+ * Undocumented class
 
 
 
 
 
 
 
14
  */
15
  abstract class ArubaHiSpeedCachePurger
16
  {
39
  /**
40
  * Purge the cache of a single page
41
  *
42
+ * @param string $url
 
43
  * @return void
44
  */
45
  abstract public function purgeUrl($url);
47
  /**
48
  * Purge the cache of a list of pages
49
  *
50
+ * @param array $urls
 
51
  * @return void
52
  */
53
  abstract public function purgeUrls($urls);
95
  * 'server_port' => string '8889'
96
  * ];
97
  *
98
+ * @param array $configs
 
99
  * @return void
100
  */
101
  public function setPurger($configs)
includes/ArubaHiSpeedCacheWpPurger.php CHANGED
@@ -16,46 +16,45 @@ namespace ArubaHiSpeedCache\includes;
16
  use ArubaHiSpeedCache\ArubaHiSpeedCachePurger;
17
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheAdmin;
18
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs;
19
- use \WP_Comment;
20
- use \WP_Post;
21
- use \WP_Term;
22
-
23
- use \get_permalink;
24
- use \wp_get_attachment_url;
25
- use \home_url;
26
- use \get_taxonomy;
27
- use \get_ancestors;
28
- use \get_term;
29
- use \user_trailingslashit;
30
- use \trailingslashit;
31
- use \get_term_link;
32
- use \current_filter;
33
- use \current_user_can;
34
- use \wp_die;
35
- use \__;
36
- use \add_action;
37
- use \check_admin_referer;
38
- use \add_query_arg;
39
- use \is_admin;
40
- use \wp_parse_url;
41
- use \wp_redirect;
42
- use \esc_url_raw;
43
- use \icl_get_home_url;
44
- use \is_multisite;
45
- use \get_current_blog_id;
46
- use \get_site_url;
47
- use \wp_is_post_autosave;
48
- use \str_replace;
49
- use \in_array;
50
- use \array_reverse;
51
- use \implode;
52
- use \filter_input;
53
- use \filter_var;
54
  use PHP_CodeSniffer\Files\DummyFile;
55
- use \sprintf;
56
 
57
  if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
58
-
59
  /**
60
  * ArubaHiSpeedCacheWpPurger
61
  *
@@ -135,7 +134,11 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
135
  logger('targhet ' . $_url, 'purgeUrl()', 'info');
136
  ///Logger
137
 
138
- return $this->doRemoteGet($_url);
 
 
 
 
139
  }
140
 
141
  /**
@@ -158,6 +161,10 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
158
  logger('targhet ' . $url, 'purgeUrls()', 'info');
159
  ///Logger
160
  }
 
 
 
 
161
  }
162
 
163
  /**
@@ -175,7 +182,11 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
175
  logger('targhet /', 'purgeAll()', 'info');
176
  ///Logger
177
 
178
- return $this->doRemoteGet('/');
 
 
 
 
179
  }
180
 
181
  /**
@@ -192,7 +203,7 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
192
 
193
  $blog_id = null;
194
 
195
- if (!is_multisite()) {
196
  $blog_id = \get_current_blog_id();
197
  }
198
 
@@ -212,6 +223,22 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
212
  return $response;
213
  }
214
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
215
  /**
216
  * GetParseSiteUrl
217
  *
@@ -360,20 +387,20 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
360
  }
361
 
362
  switch ($action) {
363
- case 'purge':
364
- $this->purgeAll();
365
- break;
366
- case 'purge_current_page':
367
-
368
- if (\is_front_page() || \is_home()) {
369
  $this->purgeAll();
370
- } else {
371
- $parse_url = \wp_parse_url($current_url);
372
- $url_to_purge = (!isset($parse_url['query'])) ? $parse_url['path'] : '/?' . $parse_url['query']; // phpcs:ignore
373
- $this->purgeUrl($url_to_purge);
374
- }
 
 
 
 
 
375
 
376
- break;
377
  }
378
 
379
  if (\wp_redirect(\esc_url_raw($redirect_url))) {
@@ -396,18 +423,18 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
396
  }
397
 
398
  switch ($action) {
399
- case 'save-sidebar-widgets':
400
- $this->purgeUrl($this->getHomepage());
401
- //Logger
402
- logger(
403
- 'targhet ' . $this->getHomepage(),
404
- 'hook:check_ajax_referer',
405
- 'info'
406
- );
407
- ///Logger
408
- break;
409
- default:
410
- break;
411
  }
412
  }
413
 
@@ -557,19 +584,19 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
557
  * For json call
558
  */
559
  if (\wp_is_json_request()) {
560
- // $is_multisite = \is_multisite();
561
- // $do_purge = ($is_multisite) ? \get_site_transient('ahsc_do_purge') : \get_transient('ahsc_do_purge'); // phpcs:ignore
562
-
563
- // if (!$do_purge) {
564
- // logger('transint non presente presente lo imposto', 'deffer');
565
- // if ($is_multisite) {
566
- // \set_site_transient('ahsc_do_purge', true, 15);
567
- // } else {
568
- // \set_transient('ahsc_do_purge', true, 15);
569
- // }
570
- // }
571
-
572
- // logger('transint presente', 'deffer');
573
  return;
574
  }
575
 
@@ -609,7 +636,6 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
609
  * Move item to trash
610
  */
611
  if ($this->is_enable_setting('ahsc_purge_archive_on_del') && 'trash' === $new_status) { // phpcs:ignore
612
-
613
  if ($this->is_enable_setting('ahsc_purge_homepage_on_del')) {
614
  $this->purgeUrl($this->parseUrl($this->getHomepage()));
615
  //Logger
@@ -635,31 +661,6 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
635
  }
636
  }
637
 
638
- //ref tags/6.0/src/wp-includes/post.php
639
- public function ahsc_post_updated()
640
- {
641
- if (!$this->is_enable_setting('ahsc_enable_purge')) {
642
- return;
643
- }
644
-
645
- /**
646
- * Edit item
647
- */
648
- if ($this->is_enable_setting('ahsc_purge_page_on_mod') || $this->is_enable_setting('ahsc_purge_archive_on_edit')) { // phpcs:ignore
649
- if ($this->is_enable_setting('ahsc_purge_homepage_on_edit')) {
650
- $this->purgeUrl($this->parseUrl($this->getHomepage()));
651
- //Logger
652
- logger(
653
- 'targhet ' . $this->parseUrl($this->getHomepage()),
654
- 'hook:post_updated:edit::home',
655
- 'info'
656
- );
657
- ///Logger
658
- return;
659
- }
660
- }
661
- }
662
-
663
  /**
664
  * Ahsc_wp_update_nav_menu
665
  *
@@ -711,33 +712,33 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
711
  $post_url = \get_permalink($_post_id);
712
 
713
  switch ($new_status) {
714
- case 'approved':
715
- if ($this->is_enable_setting('ahsc_purge_page_on_new_comment')) {
716
- $this->purgeUrl($this->parseUrl($post_url));
717
- //Logger
718
- logger(
719
- 'targhet ' . $this->parseUrl($post_url),
720
- 'hook:approved:transition_comment_status',
721
- 'info'
722
- );
723
- ///Logger
724
- }
725
- break;
726
-
727
- case 'spam':
728
- case 'unapproved':
729
- case 'trash':
730
- if ('approved' === $old_status && $this->is_enable_setting('ahsc_purge_page_on_deleted_comment')) { // phpcs:ignore
731
- $this->purgeUrl($this->parseUrl($post_url));
732
- //Logger
733
- logger(
734
- 'targhet ' . $this->parseUrl($post_url),
735
- 'hook:trash:transition_comment_status',
736
- 'info'
737
- );
738
- ///Logger
739
- }
740
- break;
741
  }
742
  }
743
 
@@ -881,29 +882,27 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
881
  */
882
  public function ahsc_deferred_purge_by_transient()
883
  {
884
- // if (wp_is_json_request()) {
885
- // logger('json request non faccio niente', 'ahsc_deferred_purge_by_transient'); // phpcs:ignore
886
- // return;
887
- // }
888
-
889
- // $is_multisite = \is_multisite();
890
- // $do_purge = ($is_multisite) ? \get_site_transient('ahsc_do_purge') : \get_transient('ahsc_do_purge'); // phpcs:ignore
891
 
892
- // if ($do_purge) {
893
- // logger('trovato il transients', 'deffer by ahsc_deferred_purge_by_transient'); // phpcs:ignore
 
 
894
 
895
- // $this->purgeUrl($this->parseUrl($this->getHomepage()));
896
- // //Logger
897
- // logger('targhet ' . $this->parseUrl($this->getHomepage()), 'ahsc_deferred_purge_by_transient', 'info'); // phpcs:ignore
898
- // ///Logger
899
 
900
- // //remove the transient to prevent moltiple calls.
901
- // if ($is_multisite) {
902
- // \delete_site_transient('ahsc_do_purge');
903
- // } else {
904
- // \delete_transient('ahsc_do_purge');
905
- // }
906
- // }
907
 
908
  return;
909
  }
@@ -926,82 +925,60 @@ if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
926
  // bulk-tags
927
  global $wp_filter;
928
 
929
- $this->i = 1;
930
 
931
- if ('bulk-tags' == $action) {
932
- $current_action = (_get_list_table('WP_Terms_List_Table')) ? (_get_list_table('WP_Terms_List_Table'))->current_action() : false; // phpcs:ignore
933
 
934
- if ('bulk-delete' === $current_action) {
935
- logger('Tolgo il delete_term hook', 'Rimozione');
936
- $this->iterations = count((array) $_REQUEST['delete_tags']);
937
- $wp_filter['delete_term']->remove_filter('delete_term', array($this, 'ahsc_delete_term'), 20); // phpcs:ignore
938
- $wp_filter['delete_term']->add_filter('delete_term', array($this, 'ahsc_deferred_purge'), 20, 0); // phpcs:ignore
939
- }
940
- return;
941
- }
942
 
943
- if ('bulk-posts' == $action) {
944
- //@see https://github.com/WordPress/WordPress/blob/master/wp-admin/edit.php
945
- logger('Tolgo il transition_post_status hook', 'Rimozione');
946
- $this->iterations = count((array) $_REQUEST['post']);
947
- $wp_filter['transition_post_status']->remove_filter('transition_post_status', array($this, 'ahsc_transition_post_status'), 20); // phpcs:ignore
948
- $wp_filter['transition_post_status']->add_filter('transition_post_status', array($this, 'ahsc_deferred_purge'), 20, 0); // phpcs:ignore
949
- return;
950
- }
951
 
952
- if ('bulk-comments' == $action) {
953
- //@see https://github.com/WordPress/WordPress/blob/b8e44627c834677be9608422cd97cdaa93ef39df/wp-admin/edit-comments.php#L38
954
- logger('Tolgo il transition_comment_status hook', 'Rimozione');
955
- $this->iterations = count((array) $_REQUEST['delete_comments']);
956
- $wp_filter['transition_comment_status']->remove_filter('transition_comment_status', array($this, 'ahsc_transition_comment_status'), 200); // phpcs:ignore
957
- $wp_filter['transition_comment_status']->add_filter('transition_comment_status', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
958
- return;
959
- }
960
 
961
- if ('bulk-plugins' == $action or 'bulk-update-plugins' == $action) {
962
- //@see https://github.com/WordPress/WordPress/blob/223cda987f3f4406182e326eaa555958610e1c17/wp-admin/plugins.php
963
- logger('Tolgo il plugin actions hook', 'Rimozione');
964
- $this->iterations = count(isset($_POST['checked']) ? (array) wp_unslash($_POST['checked']) : array()); // phpcs:ignore
965
 
 
 
 
 
 
966
 
967
- $wp_filter['activated_plugin']->remove_filter('activated_plugin', array($this, 'ahsc_purge_on_plugin_actions'), 200); // phpcs:ignore
968
- $wp_filter['deactivate_plugin']->remove_filter('deactivate_plugin', array($this, 'ahsc_purge_on_plugin_actions'), 200); // phpcs:ignore
969
- $wp_filter['delete_plugin']->remove_filter('delete_plugin', array($this, 'ahsc_purge_on_plugin_actions'), 200); // phpcs:ignore
970
 
971
- $wp_filter['activated_plugin']->add_filter('activated_plugin', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
972
- $wp_filter['deactivate_plugin']->add_filter('deactivate_plugin', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
973
- $wp_filter['delete_plugin']->add_filter('delete_plugin', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
974
- return;
975
- }
976
 
977
- if ('meta-box-loader' == $action) {
978
- logger('The bypass ' .$action. ' has been detected', 'info');
979
- return;
980
- }
 
981
 
982
- if (strpos($action, 'update-post_') >= 0) {
983
- /**
984
- * Remove the transient if present
985
- */
986
- // $is_multisite = \is_multisite();
987
- // $do_purge = ($is_multisite) ? \get_site_transient('ahsc_do_purge') : \get_transient('ahsc_do_purge'); // phpcs:ignore
988
- // if ($do_purge) {
989
- // logger('transiente delete....', 'transient');
990
- // //remove the transient to prevent moltiple calls.
991
- // if ($is_multisite) {
992
- // \delete_site_transient('ahsc_do_purge');
993
- // } else {
994
- // \delete_transient('ahsc_do_purge');
995
- // }
996
- // }
997
 
 
 
 
998
 
 
 
 
 
999
 
1000
- return;
 
 
1001
  }
1002
 
1003
- //Default
1004
- logger('Bulk action detected action: ' .$action, 'action-no-mapped');
1005
  return;
1006
  }
1007
  }
16
  use ArubaHiSpeedCache\ArubaHiSpeedCachePurger;
17
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheAdmin;
18
  use ArubaHiSpeedCache\includes\ArubaHiSpeedCacheConfigs;
19
+ use WP_Comment;
20
+ use WP_Post;
21
+ use WP_Term;
22
+
23
+ use get_permalink;
24
+ use wp_get_attachment_url;
25
+ use home_url;
26
+ use get_taxonomy;
27
+ use get_ancestors;
28
+ use get_term;
29
+ use user_trailingslashit;
30
+ use trailingslashit;
31
+ use get_term_link;
32
+ use current_filter;
33
+ use current_user_can;
34
+ use wp_die;
35
+ use __;
36
+ use add_action;
37
+ use check_admin_referer;
38
+ use add_query_arg;
39
+ use is_admin;
40
+ use wp_parse_url;
41
+ use wp_redirect;
42
+ use esc_url_raw;
43
+ use icl_get_home_url;
44
+ use is_multisite;
45
+ use get_current_blog_id;
46
+ use get_site_url;
47
+ use wp_is_post_autosave;
48
+ use str_replace;
49
+ use in_array;
50
+ use array_reverse;
51
+ use implode;
52
+ use filter_input;
53
+ use filter_var;
54
  use PHP_CodeSniffer\Files\DummyFile;
55
+ use sprintf;
56
 
57
  if (!class_exists(__NAMESPACE__ . '\ArubaHiSpeedCacheWpPurger')) {
 
58
  /**
59
  * ArubaHiSpeedCacheWpPurger
60
  *
134
  logger('targhet ' . $_url, 'purgeUrl()', 'info');
135
  ///Logger
136
 
137
+ $this->doRemoteGet($_url);
138
+
139
+ $this->flush_wp_object_cache();
140
+
141
+ return true;
142
  }
143
 
144
  /**
161
  logger('targhet ' . $url, 'purgeUrls()', 'info');
162
  ///Logger
163
  }
164
+
165
+ $this->flush_wp_object_cache();
166
+
167
+ return true;
168
  }
169
 
170
  /**
182
  logger('targhet /', 'purgeAll()', 'info');
183
  ///Logger
184
 
185
+ $this->doRemoteGet('/');
186
+
187
+ $this->flush_wp_object_cache();
188
+
189
+ return true;
190
  }
191
 
192
  /**
203
 
204
  $blog_id = null;
205
 
206
+ if (is_multisite()) {
207
  $blog_id = \get_current_blog_id();
208
  }
209
 
223
  return $response;
224
  }
225
 
226
+ /**
227
+ * Undocumented function
228
+ *
229
+ * @return void
230
+ */
231
+ public function flush_wp_object_cache()
232
+ {
233
+ $wp_object_cache = \wp_cache_flush();
234
+ if ($wp_object_cache) {
235
+ //Logger
236
+ logger('flush wp_object_cache with success....', 'info');
237
+ ///Logger
238
+ }
239
+ return $wp_object_cache;
240
+ }
241
+
242
  /**
243
  * GetParseSiteUrl
244
  *
387
  }
388
 
389
  switch ($action) {
390
+ case 'purge':
 
 
 
 
 
391
  $this->purgeAll();
392
+ break;
393
+ case 'purge_current_page':
394
+
395
+ if (\is_front_page() || \is_home()) {
396
+ $this->purgeAll();
397
+ } else {
398
+ $parse_url = \wp_parse_url($current_url);
399
+ $url_to_purge = (!isset($parse_url['query'])) ? $parse_url['path'] : '/?' . $parse_url['query']; // phpcs:ignore
400
+ $this->purgeUrl($url_to_purge);
401
+ }
402
 
403
+ break;
404
  }
405
 
406
  if (\wp_redirect(\esc_url_raw($redirect_url))) {
423
  }
424
 
425
  switch ($action) {
426
+ case 'save-sidebar-widgets':
427
+ $this->purgeUrl($this->getHomepage());
428
+ //Logger
429
+ logger(
430
+ 'targhet ' . $this->getHomepage(),
431
+ 'hook:check_ajax_referer',
432
+ 'info'
433
+ );
434
+ ///Logger
435
+ break;
436
+ default:
437
+ break;
438
  }
439
  }
440
 
584
  * For json call
585
  */
586
  if (\wp_is_json_request()) {
587
+ $is_multisite = \is_multisite();
588
+ $do_purge = ($is_multisite) ? \get_site_transient('ahsc_do_purge') : \get_transient('ahsc_do_purge'); // phpcs:ignore
589
+
590
+ if (!$do_purge) {
591
+ logger('transint non presente presente lo imposto', 'deffer');
592
+ if ($is_multisite) {
593
+ \set_site_transient('ahsc_do_purge', true, 15);
594
+ } else {
595
+ \set_transient('ahsc_do_purge', true, 15);
596
+ }
597
+ }
598
+
599
+ logger('transint presente', 'deffer');
600
  return;
601
  }
602
 
636
  * Move item to trash
637
  */
638
  if ($this->is_enable_setting('ahsc_purge_archive_on_del') && 'trash' === $new_status) { // phpcs:ignore
 
639
  if ($this->is_enable_setting('ahsc_purge_homepage_on_del')) {
640
  $this->purgeUrl($this->parseUrl($this->getHomepage()));
641
  //Logger
661
  }
662
  }
663
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
664
  /**
665
  * Ahsc_wp_update_nav_menu
666
  *
712
  $post_url = \get_permalink($_post_id);
713
 
714
  switch ($new_status) {
715
+ case 'approved':
716
+ if ($this->is_enable_setting('ahsc_purge_page_on_new_comment')) {
717
+ $this->purgeUrl($this->parseUrl($post_url));
718
+ //Logger
719
+ logger(
720
+ 'targhet ' . $this->parseUrl($post_url),
721
+ 'hook:approved:transition_comment_status',
722
+ 'info'
723
+ );
724
+ ///Logger
725
+ }
726
+ break;
727
+
728
+ case 'spam':
729
+ case 'unapproved':
730
+ case 'trash':
731
+ if ('approved' === $old_status && $this->is_enable_setting('ahsc_purge_page_on_deleted_comment')) { // phpcs:ignore
732
+ $this->purgeUrl($this->parseUrl($post_url));
733
+ //Logger
734
+ logger(
735
+ 'targhet ' . $this->parseUrl($post_url),
736
+ 'hook:trash:transition_comment_status',
737
+ 'info'
738
+ );
739
+ ///Logger
740
+ }
741
+ break;
742
  }
743
  }
744
 
882
  */
883
  public function ahsc_deferred_purge_by_transient()
884
  {
885
+ if (wp_is_json_request()) {
886
+ return;
887
+ }
 
 
 
 
888
 
889
+ $is_multisite = \is_multisite();
890
+ $do_purge = ($is_multisite) ? \get_site_transient('ahsc_do_purge') : \get_transient('ahsc_do_purge'); // phpcs:ignore
891
+ if ($do_purge) {
892
+ logger('trovato il transients', 'deffer by ahsc_deferred_purge_by_transient'); // phpcs:ignore
893
 
894
+ $this->purgeUrl($this->parseUrl($this->getHomepage()));
895
+ //Logger
896
+ logger('targhet ' . $this->parseUrl($this->getHomepage()), 'ahsc_deferred_purge_by_transient', 'info'); // phpcs:ignore
897
+ ///Logger
898
 
899
+ //remove the transient to prevent moltiple calls.
900
+ if ($is_multisite) {
901
+ \delete_site_transient('ahsc_do_purge');
902
+ } else {
903
+ \delete_transient('ahsc_do_purge');
904
+ }
905
+ }
906
 
907
  return;
908
  }
925
  // bulk-tags
926
  global $wp_filter;
927
 
928
+ $current_action = (_get_list_table('WP_Terms_List_Table')) ? (_get_list_table('WP_Terms_List_Table'))->current_action() : false; // phpcs:ignore
929
 
 
 
930
 
931
+ $this->i = 1;
 
 
 
 
 
 
 
932
 
933
+ switch ($action) {
934
+ case 'bulk-tags':
 
 
 
 
 
 
935
 
936
+ if ('bulk-delete' === $current_action) {
937
+ logger('Tolgo il delete_term hook', 'Rimozione');
938
+ $this->iterations = count((array) $_REQUEST['delete_tags']);
939
+ $wp_filter['delete_term']->remove_filter('delete_term', array($this, 'ahsc_delete_term'), 20); // phpcs:ignore
940
+ $wp_filter['delete_term']->add_filter('delete_term', array($this, 'ahsc_deferred_purge'), 20, 0); // phpcs:ignore
941
+ }
 
 
942
 
943
+ break;
944
+ case 'bulk-posts':
 
 
945
 
946
+ //@see https://github.com/WordPress/WordPress/blob/master/wp-admin/edit.php
947
+ logger('Tolgo il transition_post_status hook', 'Rimozione');
948
+ $this->iterations = count((array) $_REQUEST['post']);
949
+ $wp_filter['transition_post_status']->remove_filter('transition_post_status', array($this, 'ahsc_transition_post_status'), 20); // phpcs:ignore
950
+ $wp_filter['transition_post_status']->add_filter('transition_post_status', array($this, 'ahsc_deferred_purge'), 20, 0); // phpcs:ignore
951
 
952
+ break;
953
+ case 'bulk-comments':
 
954
 
955
+ //@see https://github.com/WordPress/WordPress/blob/b8e44627c834677be9608422cd97cdaa93ef39df/wp-admin/edit-comments.php#L38
956
+ logger('Tolgo il transition_comment_status hook', 'Rimozione');
957
+ $this->iterations = count((array) $_REQUEST['delete_comments']);
958
+ $wp_filter['transition_comment_status']->remove_filter('transition_comment_status', array($this, 'ahsc_transition_comment_status'), 200); // phpcs:ignore
959
+ $wp_filter['transition_comment_status']->add_filter('transition_comment_status', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
960
 
961
+ break;
962
+ case 'bulk-plugins':
963
+ //@see https://github.com/WordPress/WordPress/blob/223cda987f3f4406182e326eaa555958610e1c17/wp-admin/plugins.php
964
+ logger('Tolgo il plugin actions hook', 'Rimozione');
965
+ $this->iterations = count(isset($_POST['checked']) ? (array) wp_unslash($_POST['checked']) : array()); // phpcs:ignore
966
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
967
 
968
+ $wp_filter['activated_plugin']->remove_filter('activated_plugin', array($this, 'ahsc_purge_on_plugin_actions'), 200); // phpcs:ignore
969
+ $wp_filter['deactivate_plugin']->remove_filter('deactivate_plugin', array($this, 'ahsc_purge_on_plugin_actions'), 200); // phpcs:ignore
970
+ $wp_filter['delete_plugin']->remove_filter('delete_plugin', array($this, 'ahsc_purge_on_plugin_actions'), 200); // phpcs:ignore
971
 
972
+ $wp_filter['activated_plugin']->add_filter('activated_plugin', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
973
+ $wp_filter['deactivate_plugin']->add_filter('deactivate_plugin', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
974
+ $wp_filter['delete_plugin']->add_filter('delete_plugin', array($this, 'ahsc_deferred_purge'), 200, 0); // phpcs:ignore
975
+ break;
976
 
977
+ default:
978
+ logger('Bulk action detected action:' .$action, 'error');
979
+ break;
980
  }
981
 
 
 
982
  return;
983
  }
984
  }
includes/ArubaHiSpeedCachei18n.php CHANGED
@@ -1,59 +1,59 @@
1
- <?php
2
- /**
3
- * @category Wordpress-plugin
4
- * @package Aruba-HiSpeed-Cache
5
- * @author Aruba Developer <hispeedcache.developer@aruba.it>
6
- * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
7
- * @link run_aruba_hispeed_cache
8
- */
9
-
10
-
11
- namespace ArubaHiSpeedCache\includes;
12
-
13
- use load_plugin_textdomain;
14
-
15
- /**
16
- * ArubaHiSpeedCachei18n
17
- */
18
- class ArubaHiSpeedCachei18n
19
- {
20
- /**
21
- * Domain
22
- *
23
- * @var string plugin name
24
- */
25
- private $domain;
26
-
27
- /**
28
- * DirRelPath
29
- *
30
- * @var [type]
31
- */
32
- private $dirRelPath;
33
-
34
- /**
35
- * Undocumented function
36
- *
37
- * @param string $domain
38
- * @param string $plugin_rel_path
39
- */
40
- public function __construct($domain = '', $plugin_rel_path = '')
41
- {
42
- $this->domain = $domain;
43
- $this->dirRelPath = dirname($plugin_rel_path);
44
- }
45
-
46
- /**
47
- * Load_plugin_textdomain
48
- *
49
- * @return void
50
- */
51
- public function load_plugin_textdomain()
52
- {
53
- \load_plugin_textdomain(
54
- $this->domain,
55
- false,
56
- $this->dirRelPath . '/languages'
57
- );
58
- }
59
- }
1
+ <?php
2
+ /**
3
+ * @category Wordpress-plugin
4
+ * @package Aruba-HiSpeed-Cache
5
+ * @author Aruba Developer <hispeedcache.developer@aruba.it>
6
+ * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
7
+ * @link run_aruba_hispeed_cache
8
+ */
9
+
10
+
11
+ namespace ArubaHiSpeedCache\includes;
12
+
13
+ use load_plugin_textdomain;
14
+
15
+ /**
16
+ * ArubaHiSpeedCachei18n
17
+ */
18
+ class ArubaHiSpeedCachei18n
19
+ {
20
+ /**
21
+ * Domain
22
+ *
23
+ * @var string plugin name
24
+ */
25
+ private $domain;
26
+
27
+ /**
28
+ * DirRelPath
29
+ *
30
+ * @var [type]
31
+ */
32
+ private $dirRelPath;
33
+
34
+ /**
35
+ * Undocumented function
36
+ *
37
+ * @param string $domain
38
+ * @param string $plugin_rel_path
39
+ */
40
+ public function __construct($domain = '', $plugin_rel_path = '')
41
+ {
42
+ $this->domain = $domain;
43
+ $this->dirRelPath = dirname($plugin_rel_path);
44
+ }
45
+
46
+ /**
47
+ * Load_plugin_textdomain
48
+ *
49
+ * @return void
50
+ */
51
+ public function load_plugin_textdomain()
52
+ {
53
+ \load_plugin_textdomain(
54
+ $this->domain,
55
+ false,
56
+ $this->dirRelPath . '/languages'
57
+ );
58
+ }
59
+ }
includes/ArubaHispeedCacheLogger.php CHANGED
@@ -8,24 +8,20 @@
8
  * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
  * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
  * @link \ArubaHiSpeedCache\Run_Aruba_Hispeed_cache()
11
- * @since 1.2.0
12
  */
13
 
14
  namespace ArubaHiSpeedCache\includes;
15
 
16
  /**
17
- * ArubaHispeeCacheLogger - Log entries can be added with any of the following methods:
18
- * Logger::info( $message, $title = '' ) // an informational message intended for the user
19
- * Logger::debug( $message, $title = '' ) // a diagnostic message intended for the developer
20
- * Logger::warning( $message, $title = '' ) // a warning that something might go wrong
21
- * Logger::error( $message, $title = '' ) // explain why the program is going to crash
 
 
22
  *
23
- * @category Project
24
- * @package ArubaHiSpeedCache
25
- * @author Aruba Developer <hispeedcache.developer@aruba.it>
26
- * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
27
- * @link null
28
- * @since 1.2.0
29
  */
30
  class ArubaHispeeCacheLogger
31
  {
8
  * @author Aruba Developer <hispeedcache.developer@aruba.it>
9
  * @license https://www.gnu.org/licenses/gpl-2.0.html GPLv2 or later
10
  * @link \ArubaHiSpeedCache\Run_Aruba_Hispeed_cache()
11
+ * @since 1.1.3
12
  */
13
 
14
  namespace ArubaHiSpeedCache\includes;
15
 
16
  /**
17
+ * Simple logger class.
18
+ *
19
+ * Log entries can be added with any of the following methods:
20
+ * - Logger::info( $message, $title = '' ) // an informational message intended for the user
21
+ * - Logger::debug( $message, $title = '' ) // a diagnostic message intended for the developer
22
+ * - Logger::warning( $message, $title = '' ) // a warning that something might go wrong
23
+ * - Logger::error( $message, $title = '' ) // explain why the program is going to crash
24
  *
 
 
 
 
 
 
25
  */
26
  class ArubaHispeeCacheLogger
27
  {
readme.txt CHANGED
@@ -3,9 +3,9 @@
3
  Contributors: arubait, arubadev, arubasupport, agelmini, camaran
4
  Tags: HiSpeed Cache, Aruba, cache, caching, performance, pagespeed, optimize, WP cache, speed, purge
5
  Requires at least: 5.4
6
- Tested up to: 6.0
7
  Requires PHP: 5.6
8
- Stable tag: 1.2.0
9
  License: GPLv2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -70,14 +70,19 @@ wordpress_no_cache, comment_author, wordpress_logged_in_, yith_wcwl_products, wp
70
 
71
  == Changelog ==
72
 
 
 
 
 
 
73
  = 1.2.0 =
74
  * Discriminant added to REST API requests to include FSE support and remove recurring clear cache requests.
75
  * Clear function added to the 'post_updated hook' action to include support for the editor with meta-box added by plugins and themes.
76
  * Log function added to files activated with WP_DEBUG set to true, created in plugin folder. N.B. If disabled, file will be deleted.
77
  * FILTER_SANITIZE_STRING replaced by FILTER_SANITIZE_URL to ensure compatibility with PHP 8.1.
78
- * ArubaHiSpeedCache_update_plugins_db() mode added to allow management of future database updates.
79
- * Action and filter loading system within plugin fixed.
80
- * Various bug fixes and other improvements.
81
 
82
  = 1.1.2 =
83
  * Problem regarding check resolved. In the event of a false positive during activation, go to the plugin page (../wp-admin/options-general.php?page=aruba-hispeed-cache) to repeat check.
@@ -100,11 +105,7 @@ wordpress_no_cache, comment_author, wordpress_logged_in_, yith_wcwl_products, wp
100
 
101
  == Upgrade Notice ==
102
 
103
- = 1.2.0 =
104
- * Discriminant added to REST API requests to include FSE support and remove recurring clear cache requests.
105
- * Clear function added to the 'post_updated hook' action to include support for the editor with meta-box added by plugins and themes.
106
- * Log function added to files activated with WP_DEBUG set to true, created in plugin folder. N.B. If disabled, file will be deleted.
107
- * FILTER_SANITIZE_STRING replaced by FILTER_SANITIZE_URL to ensure compatibility with PHP 8.1.
108
- * ArubaHiSpeedCache_update_plugins_db() mode added to allow management of future database updates.
109
- * Action and filter loading system within plugin fixed.
110
- * Various bug fixes and other improvements.
3
  Contributors: arubait, arubadev, arubasupport, agelmini, camaran
4
  Tags: HiSpeed Cache, Aruba, cache, caching, performance, pagespeed, optimize, WP cache, speed, purge
5
  Requires at least: 5.4
6
+ Tested up to: 6.1
7
  Requires PHP: 5.6
8
+ Stable tag: 1.2.1
9
  License: GPLv2 or later
10
  License URI: https://www.gnu.org/licenses/gpl-2.0.html
11
 
70
 
71
  == Changelog ==
72
 
73
+ = 1.2.1 =
74
+ * Edit the Bootstrap method to fix the large menu editing problem.
75
+ * Action and filter loading system fixed.
76
+ * Various minor bug fixes and other improvements.
77
+
78
  = 1.2.0 =
79
  * Discriminant added to REST API requests to include FSE support and remove recurring clear cache requests.
80
  * Clear function added to the 'post_updated hook' action to include support for the editor with meta-box added by plugins and themes.
81
  * Log function added to files activated with WP_DEBUG set to true, created in plugin folder. N.B. If disabled, file will be deleted.
82
  * FILTER_SANITIZE_STRING replaced by FILTER_SANITIZE_URL to ensure compatibility with PHP 8.1.
83
+ * ArubaHiSpeedCache_update_plugins_db() mode added to allow management of future database updates.
84
+ * Action and filter loading system within plugin fixed.
85
+ * Various bug fixes and other improvements.
86
 
87
  = 1.1.2 =
88
  * Problem regarding check resolved. In the event of a false positive during activation, go to the plugin page (../wp-admin/options-general.php?page=aruba-hispeed-cache) to repeat check.
105
 
106
  == Upgrade Notice ==
107
 
108
+ = 1.2.1 =
109
+ * Edit the Bootstrap method to fix the large menu editing problem.
110
+ * Action and filter loading system fixed.
111
+ * Various minor bug fixes and other improvements.