PATH:
home
/
niazsaze
/
public_html
/
wp-content
/
plugins
/
wp-statistics
/
src
/
Traits
<?php namespace WP_Statistics\Traits; /** * Trait to handle caching logic using WordPress Object Cache. */ trait WpCacheTrait { /** * Cache group name to avoid collisions. * * @var string */ protected $cacheGroup = 'wp_statistics'; /** * Sets a value in the cache. * * @param string $key Cache key. * @param mixed $value Value to cache. * @param mixed $expire Expiration time in seconds. * * @return bool True on success, false on failure. */ public function setCache($key, $value, $expire = 0) { return wp_cache_set($key, $value, $this->cacheGroup, $expire); } /** * Gets a value from the cache. * * @param string $key Cache key. * @param mixed $default Default value if not found. * * @return mixed */ public function getCache($key, $default = null) { $value = wp_cache_get($key, $this->cacheGroup); return ($value === false) ? $default : $value; } /** * Checks if a cache key is set. * * @param string $key Cache key. * * @return bool */ public function isCacheSet($key) { return wp_cache_get($key, $this->cacheGroup) !== false; } /** * Deletes a value from the cache. * * @param string $key Cache key. * * @return bool True on success, false on failure. */ public function deleteCache($key) { return wp_cache_delete($key, $this->cacheGroup); } /** * Fetches data with caching. * * @param string $key Cache key. * @param string $expire Expiration in seconds. * @param callable $callback Function to fetch data if not cached. * * @return mixed */ public function getCachedData($key, callable $callback, $expire = 0) { $value = wp_cache_get($key, $this->cacheGroup); if ($value === false) { $value = $callback(); $this->setCache($key, $value, $expire); } return $value; } }
[-] AjaxUtilityTrait.php
[edit]
[-] TransientCacheTrait.php
[edit]
[-] MigrationAccess.php
[edit]
[-] ErrorLoggerTrait.php
[edit]
[-] ObjectCacheTrait.php
[edit]
[+]
..
[-] WpCacheTrait.php
[edit]