PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.5.5
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.5.5
1.19.8 1.19.7 1.19.6 1.19.5 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.12.0 1.13.0 1.14.0 1.15.0 1.15.1 1.15.2 1.15.3 1.16.0 1.16.1 1.16.2 1.16.3 1.16.4 1.16.5 1.16.6 1.16.7 1.16.8 1.17.0 1.17.6 1.17.7 1.17.8 1.17.9 1.18.0 1.18.1 1.18.2 1.18.3 1.18.4 1.18.5 1.18.6 1.18.7 1.18.8 1.18.9 1.19.0 1.19.1 1.19.2 1.19.3 1.19.4 1.3.19 1.3.20 1.4.0 1.4.1 1.5.0 1.5.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.16 1.5.17 1.5.18 1.5.19 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.7.0 1.7.1 1.8.0 1.8.1 1.8.3 1.9.0 1.9.1 1.9.2
nitropack / classes / Integration / Hosting / Pagely.php
nitropack / classes / Integration / Hosting Last commit date
Closte.php 4 years ago Cloudways.php 4 years ago Flywheel.php 4 years ago GoDaddyWPaaS.php 4 years ago GridPane.php 4 years ago Hosting.php 4 years ago Kinsta.php 4 years ago Pagely.php 4 years ago PagelyCachePurge.php 4 years ago SiteGround.php 4 years ago WPEngine.php 4 years ago
Pagely.php
56 lines
1 <?php
2
3 namespace NitroPack\Integration\Hosting;
4
5 class Pagely extends Hosting {
6 const STAGE = "very_early";
7
8 public static function detect() {
9 return class_exists('\PagelyCachePurge') || isset($_SERVER["HTTP_X_PAGELY_SSL"]);
10 }
11
12 public function init($stage) {
13 if ($this->getHosting() == "pagely") {
14 switch ($stage) {
15 case "very_early":
16 add_action('nitropack_cacheable_cache_headers', [$this, 'addCacheControl']);
17 add_action('nitropack_cachehit_cache_headers', [$this, 'addCacheControl']);
18 return true;
19 case "early":
20 add_action('nitropack_execute_purge_url', [$this, 'purgeUrl']);
21 add_action('nitropack_execute_purge_all', [$this, 'purgeAll']);
22 return true;
23 default:
24 return false;
25 }
26 }
27 }
28
29 public function purgeUrl($url) {
30 try {
31 $path = parse_url($url, PHP_URL_PATH);
32 if (class_exists("\PagelyCachePurge")) { // We need to have this check for clients that switch hosts
33 $pagely = new PagelyCachePurge();
34 $pagely->purgePath($path . "(.*)");
35 }
36 } catch (\Exception $e) {
37 // Pagely exception
38 }
39 }
40
41 public function purgeAll() {
42 try {
43 if (class_exists("\PagelyCachePurge")) { // We need to have this check for clients that switch hosts
44 $pagely = new PagelyCachePurge();
45 $pagely->purgeAll();
46 }
47 } catch (\Exception $e) {
48 // Pagely exception
49 }
50 }
51
52 public function addCacheControl() {
53 header("Cache-Control: public, max-age=0, s-maxage=3600");
54 }
55 }
56