导入 AKSRT 主题开发源码

This commit is contained in:
Claude Code committed 2026-07-03 22:50:34 +08:00
1 parent 9681dd3d48
commit 1268a55dd0
595 files changed
+127705

No files matched your search

+68
View File
@@ -0,0 +1,68 @@
<?php
/**
* AKSRT Scripts & Styles
*
* 前端资源加载:CSS、JS、内联样式变量
*
* @package AKSRT
*/
defined('ABSPATH') || exit;
class AKSRT_Scripts {
use AKSRT_Scripts_Part_1b;
use AKSRT_Scripts_Part_2;
private static $instance = null;
private function __construct() {}
public static function get_instance(): self {
if (null === self::$instance) {
self::$instance = new self();
}
return self::$instance;
}
public function init(): void {
add_action('wp_enqueue_scripts', [$this, 'enqueue_public']);
add_action('admin_enqueue_scripts', [$this, 'enqueue_admin']);
add_action('admin_enqueue_scripts', [$this, 'enqueue_passive_polyfill'], 1);
add_action('wp_head', [$this, 'inline_css_vars']);
add_action('wp_head', [$this, 'output_custom_codes']);
add_action('wp_body_open', [$this, 'output_loading_overlay'], 1);
add_action('wp_footer', [$this, 'output_custom_footer_codes'], 99);
add_action('wp_ajax_aksrt_frontend_debug', [$this, 'handle_frontend_debug']);
add_action('wp_ajax_nopriv_aksrt_frontend_debug', [$this, 'handle_frontend_debug']);
add_action('wp_ajax_aksrt_search_history', [$this, 'handle_search_history']);
add_action('wp_ajax_aksrt_search_suggestions', [$this, 'handle_search_suggestions']);
add_action('wp_ajax_nopriv_aksrt_search_suggestions', [$this, 'handle_search_suggestions']);
add_filter('body_class', [$this, 'body_classes']);
add_filter('wp_resource_hints', [$this, 'resource_hints'], 10, 2);
}
/**
* 字体 CDN 的 preconnect 提示(提前 DNS + TLS 握手,加速首屏字体加载)
*/
public function resource_hints(array $hints, string $relation): array {
if ('preconnect' === $relation) {
$hints[] = [
'href' => 'https://fonts.googleapis.com',
'crossorigin',
];
$hints[] = [
'href' => 'https://fonts.gstatic.com',
'crossorigin',
];
$hints[] = [
'href' => 'https://cdn.jsdelivr.net',
'crossorigin',
];
}
return $hints;
}
}
return AKSRT_Scripts::get_instance();