进行了一些小修复
This commit is contained in:
+18
-50
@@ -13,54 +13,29 @@ trait ScriptsPart1b {
|
||||
$base_uri = get_template_directory_uri();
|
||||
$version = AKSRT_VERSION;
|
||||
|
||||
$runtime_uri = $base_uri . '/assets';
|
||||
$fa5_uri = $base_uri . '/assets/fontawesome5';
|
||||
|
||||
// Keep the WordPress handle but make its modern core build the only runtime.
|
||||
$wp_scripts = wp_scripts();
|
||||
if (isset($wp_scripts->registered['jquery'])) {
|
||||
$wp_scripts->registered['jquery']->deps = ['jquery-core'];
|
||||
}
|
||||
wp_enqueue_script('jquery');
|
||||
|
||||
wp_enqueue_script(
|
||||
'aksrt-passive-events',
|
||||
$base_uri . '/assets/js/passive-events.js',
|
||||
[],
|
||||
$version,
|
||||
false
|
||||
);
|
||||
|
||||
wp_enqueue_style('_bootstrap', $runtime_uri . '/css/bootstrap.min.css', [], '3.4.1');
|
||||
wp_enqueue_style('_fontawesome', $fa5_uri . '/css/all.min.css', [], '5.15.4');
|
||||
wp_enqueue_style('_main', $runtime_uri . '/css/main.min.css', ['_bootstrap', '_fontawesome'], $version);
|
||||
wp_enqueue_script('bootstrap', $runtime_uri . '/js/runtime/libs/bootstrap.min.js', ['jquery'], '3.4.1', true);
|
||||
|
||||
wp_enqueue_style('aksrt-style', get_stylesheet_uri(), ['_main'], $version);
|
||||
$lazy_animation = class_exists('\AKSRT\Settings\Settings')
|
||||
? (string) \AKSRT\Settings\Settings::get_value('lazy_animation', 'blur')
|
||||
: 'blur';
|
||||
if ($lazy_animation === 'fade') {
|
||||
wp_add_inline_style('aksrt-style', '.lazyloaded{--lazy-animation:lazy_fade!important;}');
|
||||
} elseif ($lazy_animation === 'scale') {
|
||||
wp_add_inline_style('aksrt-style', '.lazyloaded{--lazy-animation:lazy_scale!important;}');
|
||||
}
|
||||
|
||||
$core_bundle = get_template_directory() . '/assets/css/build/core.css';
|
||||
wp_enqueue_style(
|
||||
'aksrt-core',
|
||||
$base_uri . '/assets/css/build/core.css',
|
||||
['aksrt-style'],
|
||||
file_exists($core_bundle) ? (string) filemtime($core_bundle) : $version
|
||||
);
|
||||
|
||||
$public_bundle = get_template_directory() . '/assets/css/build/public.css';
|
||||
wp_enqueue_style(
|
||||
'aksrt-public',
|
||||
$base_uri . '/assets/css/build/public.css',
|
||||
['aksrt-core', '_fontawesome'],
|
||||
[],
|
||||
file_exists($public_bundle) ? (string) filemtime($public_bundle) : $version
|
||||
);
|
||||
|
||||
$lazy_animation = class_exists('\AKSRT\Settings\Settings')
|
||||
? (string) \AKSRT\Settings\Settings::get_value('lazy_animation', 'blur')
|
||||
: 'blur';
|
||||
if ($lazy_animation === 'fade') {
|
||||
wp_add_inline_style('aksrt-public', '.lazyloaded{--lazy-animation:lazy_fade!important;}');
|
||||
} elseif ($lazy_animation === 'scale') {
|
||||
wp_add_inline_style('aksrt-public', '.lazyloaded{--lazy-animation:lazy_scale!important;}');
|
||||
}
|
||||
|
||||
$core_dep = 'aksrt-public';
|
||||
|
||||
$deps = [$core_dep];
|
||||
@@ -100,7 +75,7 @@ trait ScriptsPart1b {
|
||||
&& class_exists('\AKSRT\Settings\Settings')
|
||||
&& !empty(\AKSRT\Settings\Settings::get_signin_reward_settings()['enabled']);
|
||||
$vip_coordinator = get_template_directory() . '/assets/js/vip-purchase-coordinator.js';
|
||||
if (($vip_on || $credits_on || $affiliate_on) && file_exists($vip_coordinator)) {
|
||||
if ((($vip_on && is_user_logged_in()) || $credits_on || $affiliate_on) && file_exists($vip_coordinator)) {
|
||||
wp_enqueue_script(
|
||||
'aksrt-vip-coordinator',
|
||||
$base_uri . '/assets/js/vip-purchase-coordinator.js',
|
||||
@@ -111,7 +86,7 @@ trait ScriptsPart1b {
|
||||
}
|
||||
|
||||
// VIP modal (legacy .pay-vip)
|
||||
if ($vip_on) {
|
||||
if ($vip_on && is_user_logged_in()) {
|
||||
$vip_css = get_template_directory() . '/assets/css/frontend/vip-modal.css';
|
||||
if (file_exists($vip_css)) {
|
||||
wp_enqueue_style(
|
||||
@@ -189,7 +164,7 @@ trait ScriptsPart1b {
|
||||
// CMS route detection.
|
||||
$is_cms_mode = function_exists('aksrt_is_cms_mode') ? aksrt_is_cms_mode() : false;
|
||||
// 首页/归档/搜索:卡片 + 侧栏
|
||||
if ($is_home_or_archive) {
|
||||
if ($is_home_or_archive && !$is_fixed_homepage) {
|
||||
$enqueue_module('post-card');
|
||||
$enqueue_module('sidebar');
|
||||
$enqueue_module('breadcrumb');
|
||||
@@ -531,7 +506,7 @@ trait ScriptsPart1b {
|
||||
wp_enqueue_script(
|
||||
'aksrt-messages',
|
||||
$base_uri . '/assets/js/messages.js',
|
||||
['loader_js'],
|
||||
['aksrt-runtime'],
|
||||
(string) filemtime($messages_js),
|
||||
true
|
||||
);
|
||||
@@ -546,7 +521,7 @@ trait ScriptsPart1b {
|
||||
wp_enqueue_script(
|
||||
'aksrt-share-data',
|
||||
$base_uri . '/assets/js/share-data-builder.js',
|
||||
['loader_js'],
|
||||
['aksrt-runtime'],
|
||||
(string) filemtime($share_data_js),
|
||||
true
|
||||
);
|
||||
@@ -560,7 +535,7 @@ trait ScriptsPart1b {
|
||||
wp_enqueue_script(
|
||||
'aksrt-poster-share',
|
||||
$base_uri . '/assets/js/poster-share.js',
|
||||
['loader_js', 'aksrt-share-data'],
|
||||
['aksrt-runtime', 'aksrt-share-data'],
|
||||
(string) filemtime($poster_js),
|
||||
true
|
||||
);
|
||||
@@ -610,18 +585,11 @@ trait ScriptsPart1b {
|
||||
}
|
||||
|
||||
if ($is_fixed_homepage) {
|
||||
$enqueue_module('post-card');
|
||||
$homepage_style_deps = ['aksrt-public', 'aksrt-post-card'];
|
||||
$homepage_style_deps = array_values(array_filter(
|
||||
$homepage_style_deps,
|
||||
static fn(string $handle): bool => wp_style_is($handle, 'registered')
|
||||
));
|
||||
|
||||
$homepage_bundle = get_template_directory() . '/assets/css/build/homepage.css';
|
||||
wp_enqueue_style(
|
||||
'aksrt-homepage-fixed',
|
||||
$base_uri . '/assets/css/build/homepage.css',
|
||||
$homepage_style_deps,
|
||||
['aksrt-public'],
|
||||
file_exists($homepage_bundle) ? (string) filemtime($homepage_bundle) : $version
|
||||
);
|
||||
}
|
||||
|
||||
+10
-36
@@ -19,21 +19,20 @@ trait ScriptsPart1c {
|
||||
/**
|
||||
* Fonts / FA / global JS stack / aksrtData (split from enqueue_public).
|
||||
*/
|
||||
private function enqueue_public_fonts_js_and_data($base_uri, $core_dep, $deps, $is_fixed_homepage, $is_home_or_archive, $is_single_post, $is_single_resource, $version): void {
|
||||
private function enqueue_public_fonts_js_and_data($base_uri, $core_dep, $deps, $is_fixed_homepage, $is_home_or_archive, $is_single_post, $is_single_resource, $version): void {
|
||||
$runtime_uri = $base_uri . '/assets';
|
||||
$runtime_loader_path = get_template_directory() . '/assets/js/runtime/loader.js';
|
||||
$runtime_main_path = get_template_directory() . '/assets/js/runtime/main.min.js';
|
||||
$runtime_loader_version = file_exists($runtime_loader_path) ? (string) filemtime($runtime_loader_path) : $version;
|
||||
$runtime_version = file_exists($runtime_main_path) ? (string) filemtime($runtime_main_path) : $version;
|
||||
$public_runtime_path = get_template_directory() . '/assets/js/build/public.js';
|
||||
wp_enqueue_script(
|
||||
'loader_js',
|
||||
$runtime_uri . '/js/runtime/loader.js',
|
||||
['jquery', 'bootstrap'],
|
||||
$runtime_loader_version,
|
||||
'aksrt-runtime',
|
||||
$base_uri . '/assets/js/build/public.js',
|
||||
['jquery'],
|
||||
file_exists($public_runtime_path) ? (string) filemtime($public_runtime_path) : $version,
|
||||
true
|
||||
);
|
||||
wp_localize_script(
|
||||
'loader_js',
|
||||
'aksrt-runtime',
|
||||
'_win',
|
||||
[
|
||||
'views' => '',
|
||||
@@ -82,16 +81,6 @@ trait ScriptsPart1c {
|
||||
],
|
||||
]
|
||||
);
|
||||
|
||||
$public_runtime_path = get_template_directory() . '/assets/js/build/public.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-runtime',
|
||||
$base_uri . '/assets/js/build/public.js',
|
||||
['loader_js'],
|
||||
file_exists($public_runtime_path) ? (string) filemtime($public_runtime_path) : $version,
|
||||
true
|
||||
);
|
||||
|
||||
// AJAX 调试(WP_DEBUG 或 ?aksrt_ajax_debug=1):记录所有失败的
|
||||
// jQuery ajax / fetch 请求,用于定位 vendor main.min.js 的 400 "0" 来源。
|
||||
if (function_exists('aksrt_ajax_debug_enabled') && aksrt_ajax_debug_enabled()) {
|
||||
@@ -133,18 +122,6 @@ trait ScriptsPart1c {
|
||||
);
|
||||
}
|
||||
|
||||
// Instant page prefetch (hover to preload)
|
||||
$instant_page_js = get_template_directory() . '/assets/js/instant-page.js';
|
||||
if (file_exists($instant_page_js)) {
|
||||
wp_enqueue_script(
|
||||
'aksrt-instant-page',
|
||||
$base_uri . '/assets/js/instant-page.js',
|
||||
[],
|
||||
(string) filemtime($instant_page_js),
|
||||
false // load in <head> for early prefetch capability
|
||||
);
|
||||
}
|
||||
|
||||
// Section navs: article TOC / scrollspy
|
||||
$section_navs_js = get_template_directory() . '/assets/js/section-navs.js';
|
||||
if (is_singular() && file_exists($section_navs_js)) {
|
||||
@@ -321,7 +298,7 @@ trait ScriptsPart1c {
|
||||
wp_enqueue_script(
|
||||
'aksrt-weixin-share',
|
||||
$base_uri . '/assets/js/weixin-share.js',
|
||||
['loader_js'],
|
||||
['aksrt-runtime'],
|
||||
(string) filemtime($weixin_share_path),
|
||||
true
|
||||
);
|
||||
@@ -332,7 +309,7 @@ trait ScriptsPart1c {
|
||||
wp_enqueue_script(
|
||||
'aksrt-post-share',
|
||||
$base_uri . '/assets/js/post-share.js',
|
||||
['loader_js', 'aksrt-weixin-share', 'aksrt-share-data'],
|
||||
['aksrt-runtime', 'aksrt-weixin-share', 'aksrt-share-data'],
|
||||
(string) filemtime($post_share_path),
|
||||
true
|
||||
);
|
||||
@@ -348,10 +325,7 @@ trait ScriptsPart1c {
|
||||
// 数据注入 - 全站统一消费 window.aksrtData
|
||||
// Attach to aksrt-runtime (loaded before all core modules) so ajaxUrl/nonce
|
||||
// exist before pagination/search/article handlers run.
|
||||
$aksrt_data_handle = wp_script_is('aksrt-runtime', 'registered') || wp_script_is('aksrt-runtime', 'enqueued')
|
||||
? 'aksrt-runtime'
|
||||
: 'loader_js';
|
||||
wp_localize_script($aksrt_data_handle, 'aksrtData', [
|
||||
wp_localize_script('aksrt-runtime', 'aksrtData', [
|
||||
'ajaxUrl' => admin_url('admin-ajax.php'),
|
||||
'nonce' => wp_create_nonce('aksrt_public_nonce'),
|
||||
'restNonce' => wp_create_nonce('wp_rest'),
|
||||
|
||||
@@ -51,8 +51,8 @@ final class AssetManager {
|
||||
$uri = get_template_directory_uri();
|
||||
$css = $root . '/assets/widgets/frontend.css';
|
||||
$js = $root . '/assets/widgets/frontend.js';
|
||||
wp_register_style(self::STYLE_HANDLE, $uri . '/assets/widgets/frontend.css', ['aksrt-style'], is_file($css) ? (string) filemtime($css) : null);
|
||||
wp_register_script(self::SCRIPT_HANDLE, $uri . '/assets/widgets/frontend.js', ['loader_js'], is_file($js) ? (string) filemtime($js) : null, true);
|
||||
wp_register_style(self::STYLE_HANDLE, $uri . '/assets/widgets/frontend.css', ['aksrt-public'], is_file($css) ? (string) filemtime($css) : null);
|
||||
wp_register_script(self::SCRIPT_HANDLE, $uri . '/assets/widgets/frontend.js', ['aksrt-runtime'], is_file($js) ? (string) filemtime($js) : null, true);
|
||||
$third_party = $uri . '/assets/widgets/third-party/';
|
||||
wp_register_script('aksrt-widget-hls', $third_party . 'hls.min.js', [], 'reference-pinned', true);
|
||||
wp_register_script('aksrt-widget-flv', $third_party . 'flv.min.js', [], 'reference-pinned', true);
|
||||
|
||||
Reference in New Issue
Block a user