PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / trunk
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization vtrunk
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 / Kinsta.php
nitropack / classes / Integration / Hosting Last commit date
Closte.php 1 year ago Cloudways.php 1 month ago DreamHost.php 1 year ago Flywheel.php 1 year ago GoDaddyWPaaS.php 1 year ago GridPane.php 1 year ago Hosting.php 1 year ago Kinsta.php 1 year ago Pagely.php 1 year ago PagelyCachePurge.php 1 year ago Pantheon.php 1 year ago Pressable.php 1 year ago Raidboxes.php 1 year ago RocketNet.php 1 year ago Savvii.php 1 year ago SiteGround.php 3 months ago SpinupWp.php 1 year ago Vimexx.php 1 year ago WPEngine.php 1 month ago WPX.php 1 year ago WPmudev.php 1 year ago
Kinsta.php
55 lines
1 <?php
2
3 namespace NitroPack\Integration\Hosting;
4
5 use NitroPack\SDK\Device;
6
7 class Kinsta extends Hosting {
8 const STAGE = "very_early";
9
10 public static function detect() {
11 return defined("KINSTAMU_VERSION");
12 }
13
14 public function init($stage) {
15 if ($this->getHosting() == "kinsta") {
16 add_action('nitropack_execute_purge_url', [$this, 'purgeUrl']);
17 add_action('nitropack_execute_purge_all', [$this, 'purgeAll']);
18
19 if ( ! empty($_SERVER["HTTP_USER_AGENT"]) && stripos($_SERVER["HTTP_USER_AGENT"], "Nitro-Optimizer-Agent") !== false) {
20 add_filter("wp_is_mobile", function() {
21 $device = new Device($_SERVER["HTTP_USER_AGENT"]);
22 return $device->isMobile();
23 }, PHP_INT_MAX);
24 }
25 }
26 }
27
28 public function purgeUrl($url) {
29 try {
30 $data = array(
31 'single|nitropack' => preg_replace( '@^https?://@', '', $url)
32 );
33 $httpClient = new \NitroPack\HttpClient\HttpClient("https://localhost/kinsta-clear-cache/v2/immediate");
34 $httpClient->setPostData($data);
35 $httpClient->fetch(true, "POST");
36 return true;
37 } catch (\Exception $e) {
38 }
39
40 return false;
41 }
42
43 public function purgeAll() {
44 try {
45 $httpClient = new \NitroPack\HttpClient\HttpClient("https://localhost/kinsta-clear-cache-all");
46 $httpClient->timeout = 5;
47 $httpClient->fetch();
48 return true;
49 } catch (\Exception $e) {
50 }
51
52 return false;
53 }
54 }
55