PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backup, Restore, Migration & Clone / 4.9.2
WP STAGING – WordPress Backup, Restore, Migration & Clone v4.9.2
4.9.2 4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Framework / Adapter / Maintenance.php
wp-staging / Framework / Adapter Last commit date
Database 1 year ago Database.php 1 year ago DatabaseInterface.php 1 year ago DateTimeAdapter.php 1 year ago Directory.php 1 day ago DirectoryInterface.php 1 year ago Maintenance.php 5 months ago PhpAdapter.php 7 months ago SourceDatabase.php 2 years ago WpAdapter.php 5 months ago
Maintenance.php
41 lines
1 <?php
2
3 namespace WPStaging\Framework\Adapter;
4
5 use WPStaging\Framework\Filesystem\FileObject;
6 use WPStaging\Framework\Filesystem\Filesystem;
7
8 class Maintenance
9 {
10 /** @var string */
11 const FILTER_ENABLE_MAINTENANCE = 'enable_maintenance_mode';
12
13 /** @var string */
14 const FILE_NAME = '.maintenance';
15
16 public function isMaintenance()
17 {
18 return file_exists($this->findMaintenanceFilePath());
19 }
20
21 public function enableMaintenance($isMaintenance)
22 {
23 $maintenanceFile = $this->findMaintenanceFilePath();
24 $fileExists = $this->isMaintenance();
25 if ($isMaintenance && !$fileExists) {
26 // Perhaps maintenance.php in WP_CONTENT?
27 (new FileObject($maintenanceFile, FileObject::MODE_WRITE))->fwriteSafe('<?php $upgrading = time() ?>');
28 return;
29 }
30
31 if (!$isMaintenance && $fileExists) {
32 (new Filesystem())->delete($maintenanceFile);
33 }
34 }
35
36 private function findMaintenanceFilePath()
37 {
38 return ABSPATH . self::FILE_NAME;
39 }
40 }
41