public static function process() { theme_features::check_referer(); $output = apply_filters('dynamic_request_process', []); $output['theme-nonce'] = wp_create_nonce('theme-nonce'); /** * dev mode */ if (class_exists('theme_dev_mode') && theme_dev_mode::get_options('queries')) { global $wpdb; $output['debug'] = ['queries' => $wpdb->queries, 'time' => microtime(true) - $_SERVER['REQUEST_TIME_FLOAT'], 'memory' => sprintf('%01.3f', memory_get_usage() / 1024 / 1024)]; } header('Content-Type: application/javascript'); die('window.DYNAMIC_REQUEST = ' . json_encode($output)); }
/** * Get the cache * * @param string $key Cache ID * @param string $group Cache group * @param bool $force True to get cache forced * @return mixed * @version 2.0.2 */ public static function get($key, $group = null, $force = false) { /** * if dev mode enabled, do NOT get data from cache */ if (theme_dev_mode::is_enabled()) { return false; } if (wp_using_ext_object_cache()) { $group = self::$cache_base_key . '-' . $group; return wp_cache_get($key, $group, $force); } return false; }
public static function mark_start_data() { self::$data = array('start-time' => microtime(), 'start-query' => get_num_queries(), 'start-memory' => memory_get_usage()); }
/** * get_theme_extension_url * * @param array $args = array_merge([ 'type' => null, 'basedir' => null, 'file_basename' => null, 'ext' => null, 'mtime' => false, ],$args); * @return string * @version 3.0.0 */ public static function get_theme_extension_url(array $args) { if (class_exists('theme_dev_mode') && theme_dev_mode::is_enabled()) { $self_basedir_extension = 'basedir_' . $args['ext'] . '_src'; } else { $self_basedir_extension = 'basedir_' . $args['ext'] . '_min'; } $self_basedir = 'basedir_' . $args['type']; $file_url = self::get_theme_url() . self::${$self_basedir} . basename($args['basedir']) . self::${$self_basedir_extension} . $args['file_basename'] . '.' . $args['ext']; return $file_url; }