is_thinkrank_admin_page()) { return; } add_action('admin_head', [$this, 'add_asset_preloading'], 1); add_action('admin_head', [$this, 'add_performance_hints'], 2); } /** * Check if current page is a ThinkRank admin page * * @since 1.0.0 * * @return bool True if ThinkRank admin page */ private function is_thinkrank_admin_page(): bool { $screen = get_current_screen(); if (!$screen) { return false; } // Check for ThinkRank admin pages return strpos($screen->id, 'thinkrank') !== false || strpos($screen->base, 'thinkrank') !== false || (isset($_GET['page']) && strpos($_GET['page'], 'thinkrank') !== false); } /** * Add asset preloading headers * * @since 1.0.0 */ public function add_asset_preloading(): void { $plugin_url = plugin_dir_url(THINKRANK_PLUGIN_FILE); $assets = [ // Critical CSS [ 'url' => $plugin_url . 'assets/admin.css', 'type' => 'style' ], // Critical JS [ 'url' => $plugin_url . 'assets/admin.js', 'type' => 'script' ] ]; foreach ($assets as $asset) { // Check if file exists before preloading $file_path = str_replace($plugin_url, THINKRANK_PLUGIN_DIR, $asset['url']); if (file_exists($file_path)) { printf( '' . "\n", esc_url($asset['url']), esc_attr($asset['type']), $asset['type'] === 'style' ? ' type="text/css"' : '' ); } } } /** * Add performance hints * * @since 1.0.0 */ public function add_performance_hints(): void { // DNS prefetch for external APIs (if configured) $external_domains = [ 'api.openai.com', 'api.anthropic.com', 'generativelanguage.googleapis.com' ]; foreach ($external_domains as $domain) { printf('' . "\n", esc_attr($domain)); } // Remove redundant viewport meta tag: WordPress admin already sets this. // Keeping only DNS prefetch hints here. } /** * Get asset optimization stats * * @since 1.0.0 * * @return array Optimization statistics */ public function get_stats(): array { return [ 'preloading_enabled' => $this->is_thinkrank_admin_page(), 'dns_prefetch_domains' => 3, 'optimized_pages' => ['thinkrank admin pages'] ]; } }