41 lines
969 B
PHP
41 lines
969 B
PHP
|
<?php
|
||
|
/**
|
||
|
* Auto registration for LiteSpeed classes
|
||
|
*
|
||
|
* @since 1.1.0
|
||
|
*/
|
||
|
defined('WPINC') || exit();
|
||
|
|
||
|
// Force define for object cache usage before plugin init
|
||
|
!defined('LSCWP_DIR') && define('LSCWP_DIR', __DIR__ . '/'); // Full absolute path '/var/www/html/***/wp-content/plugins/litespeed-cache/' or MU
|
||
|
|
||
|
if (!function_exists('litespeed_autoload')) {
|
||
|
function litespeed_autoload($cls)
|
||
|
{
|
||
|
if (strpos($cls, '.') !== false) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
if (strpos($cls, 'LiteSpeed') !== 0) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
$file = explode('\\', $cls);
|
||
|
array_shift($file);
|
||
|
$file = implode('/', $file);
|
||
|
$file = str_replace('_', '-', strtolower($file));
|
||
|
|
||
|
if (strpos($file, 'lib/') === 0 || strpos($file, 'cli/') === 0 || strpos($file, 'thirdparty/') === 0) {
|
||
|
$file = LSCWP_DIR . $file . '.cls.php';
|
||
|
} else {
|
||
|
$file = LSCWP_DIR . 'src/' . $file . '.cls.php';
|
||
|
}
|
||
|
|
||
|
if (file_exists($file)) {
|
||
|
require_once $file;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
spl_autoload_register('litespeed_autoload');
|