bibhamrokhanpin/wp-content/plugins/litespeed-cache/cli/presets.cls.php
2024-04-10 17:46:06 +05:45

93 lines
1.4 KiB
PHP

<?php
namespace LiteSpeed\CLI;
defined('WPINC') || exit();
use LiteSpeed\Debug2;
use LiteSpeed\Preset;
use WP_CLI;
/**
* Presets CLI
*/
class Presets
{
private $__preset;
public function __construct()
{
Debug2::debug('CLI_Presets init');
$this->__preset = Preset::cls();
}
/**
* Applies a standard preset's settings.
*
* ## OPTIONS
*
* ## EXAMPLES
*
* # Apply the preset called "basic"
* $ wp litespeed-presets apply basic
*
*/
public function apply($args)
{
$preset = $args[0];
if (!isset($preset)) {
WP_CLI::error('Please specify a preset to apply.');
return;
}
return $this->__preset->apply($preset);
}
/**
* Returns sorted backup names.
*
* ## OPTIONS
*
* ## EXAMPLES
*
* # Get all backups
* $ wp litespeed-presets get_backups
*
*/
public function get_backups()
{
$backups = $this->__preset->get_backups();
foreach ($backups as $backup) {
WP_CLI::line($backup);
}
}
/**
* Restores settings from the backup file with the given timestamp, then deletes the file.
*
* ## OPTIONS
*
* ## EXAMPLES
*
* # Restore the backup with the timestamp 1667485245
* $ wp litespeed-presets restore 1667485245
*
*/
public function restore($args)
{
$timestamp = $args[0];
if (!isset($timestamp)) {
WP_CLI::error('Please specify a timestamp to restore.');
return;
}
return $this->__preset->restore($timestamp);
}
}