| Server IP : 62.60.133.156 / Your IP : 216.73.217.51 Web Server : LiteSpeed System : Linux linux24.centraldnserver.com 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64 User : mimradmin ( 1166) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, exec, popen, proc_open MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/mimradmin/.trash/wp-content/plugins/wp-rocket/inc/Engine/Preload/Controller/ |
Upload File : |
<?php
namespace WP_Rocket\Engine\Preload\Controller;
use WP_Rocket\Engine\Preload\Database\Queries\Cache;
class ClearCache {
use CheckExcludedTrait;
/**
* DB query.
*
* @var Cache
*/
protected $query;
/**
* Initialise ClearCache.
*
* @param Cache $query DB query.
*/
public function __construct( Cache $query ) {
$this->query = $query;
}
/**
* Clear urls listed.
*
* @param array $urls urls to clean.
* @return void
*/
public function partial_clean( array $urls ) {
foreach ( $urls as $url ) {
// if it has a regex, remove the regex part completely.
if ( str_contains( $url, '*' ) ) {
$regex_part = basename( $url );
$url = str_replace( $regex_part, '', $url );
}
if ( ! $this->is_excluded_by_filter( $url ) ) {
$this->query->create_or_update(
[
'url' => $url,
'status' => 'pending',
]
);
} else {
$this->query->delete_by_url( $url );
}
}
}
/**
* Clear all urls.
*
* @return void
*/
public function full_clean() {
$this->query->set_all_to_pending();
}
/**
* Delete a URL from the preload.
*
* @param string $url URL to delete.
* @return void
*/
public function delete_url( string $url ) {
$this->query->delete_by_url( $url );
}
}