feat(navigation): hard-switch to Zibll navigation and Font Awesome 5
This commit is contained in:
+45
-154
@@ -13,7 +13,19 @@ trait ScriptsPart1b {
|
||||
$base_uri = get_template_directory_uri();
|
||||
$version = AKSRT_VERSION;
|
||||
|
||||
wp_enqueue_script('jquery');
|
||||
$zibll_uri = $base_uri . '/assets/vendor/zibll';
|
||||
$fa5_uri = $base_uri . '/assets/vendor/fontawesome5';
|
||||
|
||||
// Zibll's frontend runtime is the single public dependency stack.
|
||||
wp_deregister_script('jquery');
|
||||
wp_register_script(
|
||||
'jquery',
|
||||
$zibll_uri . '/js/libs/jquery.min.js',
|
||||
[],
|
||||
'1.9.1',
|
||||
false
|
||||
);
|
||||
wp_enqueue_script('jquery');
|
||||
|
||||
wp_enqueue_script(
|
||||
'aksrt-passive-events',
|
||||
@@ -23,22 +35,12 @@ trait ScriptsPart1b {
|
||||
false
|
||||
);
|
||||
|
||||
wp_enqueue_style(
|
||||
'bootstrap5',
|
||||
'https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css',
|
||||
[],
|
||||
'5.3.3'
|
||||
);
|
||||
wp_enqueue_style('_bootstrap', $zibll_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', $zibll_uri . '/css/main.min.css', ['_bootstrap', '_fontawesome'], $version);
|
||||
wp_enqueue_script('bootstrap', $zibll_uri . '/js/libs/bootstrap.min.js', ['jquery'], '3.4.1', true);
|
||||
|
||||
wp_enqueue_script(
|
||||
'bootstrap5',
|
||||
'https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js',
|
||||
['jquery'],
|
||||
'5.3.3',
|
||||
true
|
||||
);
|
||||
|
||||
wp_enqueue_style('aksrt-style', get_stylesheet_uri(), ['bootstrap5'], $version);
|
||||
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';
|
||||
@@ -101,41 +103,16 @@ trait ScriptsPart1b {
|
||||
);
|
||||
};
|
||||
|
||||
// 4a. 全站必加 — 优先使用合并文件
|
||||
$frontend_bundle = get_template_directory() . '/assets/css/build/frontend-base.min.css';
|
||||
if (file_exists($frontend_bundle)) {
|
||||
wp_enqueue_style(
|
||||
'aksrt-frontend-bundle',
|
||||
$base_uri . '/assets/css/build/frontend-base.min.css',
|
||||
[$core_dep],
|
||||
filemtime($frontend_bundle) ?: $version
|
||||
);
|
||||
|
||||
// Keep shell-level source overrides live during the refactor.
|
||||
foreach (['base', 'nav', 'footer'] as $shell_slug) {
|
||||
$shell_css_path = get_template_directory() . '/assets/css/frontend/' . $shell_slug . '.css';
|
||||
if (file_exists($shell_css_path)) {
|
||||
wp_enqueue_style(
|
||||
'aksrt-shell-' . $shell_slug,
|
||||
$base_uri . '/assets/css/frontend/' . $shell_slug . '.css',
|
||||
['aksrt-frontend-bundle'],
|
||||
filemtime($shell_css_path) ?: $version
|
||||
);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$enqueue_module('base');
|
||||
$enqueue_module('zibll-compat-vars');
|
||||
$enqueue_module('card-primitives');
|
||||
$enqueue_module('overlay-primitives');
|
||||
$enqueue_module('nav');
|
||||
$enqueue_module('layout');
|
||||
$enqueue_module('footer');
|
||||
$enqueue_module('floating-buttons');
|
||||
$enqueue_module('theme-background');
|
||||
$enqueue_module('menu-decorations');
|
||||
$enqueue_module('enhancements');
|
||||
}
|
||||
// AKSRT domain styles load after Zibll main.css. The old aggregate is
|
||||
// intentionally not used because it contains the removed navigation CSS.
|
||||
$enqueue_module('base');
|
||||
$enqueue_module('card-primitives');
|
||||
$enqueue_module('overlay-primitives');
|
||||
$enqueue_module('layout');
|
||||
$enqueue_module('footer');
|
||||
$enqueue_module('floating-buttons');
|
||||
$enqueue_module('theme-background');
|
||||
$enqueue_module('enhancements');
|
||||
|
||||
// 4a-b. 全局补充样式(骨架屏、空状态、分页、加载指示器)
|
||||
foreach (['skeleton', 'empty-state', 'pagination', 'ajax-spinner', 'modal-runtime'] as $slug) {
|
||||
@@ -150,73 +127,6 @@ trait ScriptsPart1b {
|
||||
}
|
||||
}
|
||||
|
||||
// Header user-box density (check-in / wallet / signout modal)
|
||||
$hub_css = get_template_directory() . '/assets/css/frontend/nav/header-userbox.css';
|
||||
if (file_exists($hub_css)) {
|
||||
wp_enqueue_style(
|
||||
'aksrt-header-userbox',
|
||||
$base_uri . '/assets/css/frontend/nav/header-userbox.css',
|
||||
[$core_dep],
|
||||
(string) filemtime($hub_css)
|
||||
);
|
||||
}
|
||||
$hub_js = get_template_directory() . '/assets/js/header-userbox.js';
|
||||
if (file_exists($hub_js)) {
|
||||
wp_enqueue_script(
|
||||
'aksrt-header-userbox',
|
||||
$base_uri . '/assets/js/header-userbox.js',
|
||||
['aksrt-notyf'],
|
||||
(string) filemtime($hub_js),
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
// Header multi-function publish/VIP cluster
|
||||
$hmb_css = get_template_directory() . '/assets/css/frontend/nav/header-menu-buttons.css';
|
||||
if (file_exists($hmb_css)) {
|
||||
wp_enqueue_style(
|
||||
'aksrt-header-menu-buttons',
|
||||
$base_uri . '/assets/css/frontend/nav/header-menu-buttons.css',
|
||||
[$core_dep],
|
||||
(string) filemtime($hmb_css)
|
||||
);
|
||||
}
|
||||
|
||||
// Final nav alignment overrides AFTER header-menu-buttons (zibll text/icon baseline).
|
||||
// Re-enqueue shell nav.css last so inline critical rules win the cascade.
|
||||
$nav_css = get_template_directory() . '/assets/css/frontend/nav.css';
|
||||
if (file_exists($nav_css)) {
|
||||
wp_enqueue_style(
|
||||
'aksrt-nav-align',
|
||||
$base_uri . '/assets/css/frontend/nav.css',
|
||||
['aksrt-header-menu-buttons'],
|
||||
(string) filemtime($nav_css)
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
$inline_search_js = get_template_directory() . '/assets/js/header-inline-search.js';
|
||||
if (file_exists($inline_search_js)) {
|
||||
wp_enqueue_script(
|
||||
'aksrt-header-inline-search',
|
||||
$base_uri . '/assets/js/header-inline-search.js',
|
||||
[],
|
||||
(string) filemtime($inline_search_js),
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
$hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
if (file_exists($hmb_js)) {
|
||||
wp_enqueue_script(
|
||||
'aksrt-header-newadd',
|
||||
$base_uri . '/assets/js/header-newadd.js',
|
||||
[],
|
||||
(string) filemtime($hmb_js),
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
// Shared VIP purchase/poll coordinator for modal and credits surfaces.
|
||||
$vip_on = class_exists('\AKSRT\Settings\Settings')
|
||||
&& !empty(\AKSRT\Settings\Settings::get_payment_vip_settings()['enabled']);
|
||||
@@ -256,7 +166,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-pay-vip',
|
||||
$base_uri . '/assets/js/pay-vip.js',
|
||||
['aksrt-script', 'aksrt-core-request', 'aksrt-core-modal-runtime', 'aksrt-vip-coordinator', 'aksrt-notyf'],
|
||||
['loader_js', 'aksrt-core-request', 'aksrt-core-modal-runtime', 'aksrt-vip-coordinator', 'aksrt-notyf'],
|
||||
(string) filemtime($vip_js),
|
||||
true
|
||||
);
|
||||
@@ -325,21 +235,6 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
$enqueue_module('breadcrumb');
|
||||
}
|
||||
|
||||
// 顶部多功能组件:按 page-type 启用结果入队(对齐 zibll,不绑死首页)
|
||||
if (function_exists('aksrt_header_slide_is_show') && aksrt_header_slide_is_show()) {
|
||||
// flex/gutters used by icon cards (same helpers single-post loads via zibll-utilities)
|
||||
$zu_path = get_template_directory() . '/assets/css/frontend/zibll-utilities.css';
|
||||
if (file_exists($zu_path)) {
|
||||
wp_enqueue_style(
|
||||
'aksrt-zibll-utilities',
|
||||
$base_uri . '/assets/css/frontend/zibll-utilities.css',
|
||||
is_string($deps[0] ?? null) ? [$deps[0]] : (array) $deps,
|
||||
filemtime($zu_path) ?: $version
|
||||
);
|
||||
}
|
||||
$enqueue_module('header-components');
|
||||
}
|
||||
|
||||
// 单篇文章:所有 single 相关样式
|
||||
if ($is_single_post) {
|
||||
// Prefer discrete enqueues over CSS @import (cache-bust + parallel load).
|
||||
@@ -433,7 +328,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-author',
|
||||
$base_uri . '/assets/js/author.js',
|
||||
['aksrt-script'],
|
||||
['loader_js'],
|
||||
(string) filemtime($author_js_path),
|
||||
true
|
||||
);
|
||||
@@ -493,7 +388,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-order-center',
|
||||
$base_uri . '/assets/js/order-center.js',
|
||||
['aksrt-script', 'aksrt-rehydrate', 'aksrt-core-request', 'aksrt-core-modal-runtime'],
|
||||
['loader_js', 'aksrt-rehydrate', 'aksrt-core-request', 'aksrt-core-modal-runtime'],
|
||||
(string) filemtime($order_center_js),
|
||||
true
|
||||
);
|
||||
@@ -505,14 +400,14 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-route-user-center-auth',
|
||||
$base_uri . '/assets/js/routes/user-center-auth.js',
|
||||
['aksrt-script', 'aksrt-core-request', 'aksrt-core-modal-runtime'],
|
||||
['loader_js', 'aksrt-core-request', 'aksrt-core-modal-runtime'],
|
||||
(string) filemtime($identity_js),
|
||||
true
|
||||
);
|
||||
}
|
||||
$user_center_deps = file_exists($identity_js)
|
||||
? ['aksrt-script', 'aksrt-route-user-center-auth', 'aksrt-notyf']
|
||||
: ['aksrt-script', 'aksrt-notyf'];
|
||||
? ['loader_js', 'aksrt-route-user-center-auth', 'aksrt-notyf']
|
||||
: ['loader_js', 'aksrt-notyf'];
|
||||
if ($has_orders_panel && wp_script_is('aksrt-order-center', 'registered')) {
|
||||
$user_center_deps[] = 'aksrt-order-center';
|
||||
}
|
||||
@@ -668,7 +563,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-messages',
|
||||
$base_uri . '/assets/js/messages.js',
|
||||
['aksrt-script'],
|
||||
['loader_js'],
|
||||
(string) filemtime($messages_js),
|
||||
true
|
||||
);
|
||||
@@ -678,7 +573,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-conversation',
|
||||
$base_uri . '/assets/js/conversation.js',
|
||||
['aksrt-script'],
|
||||
['loader_js'],
|
||||
(string) filemtime($conversation_js),
|
||||
true
|
||||
);
|
||||
@@ -693,7 +588,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-share-data',
|
||||
$base_uri . '/assets/js/share-data-builder.js',
|
||||
['aksrt-script'],
|
||||
['loader_js'],
|
||||
(string) filemtime($share_data_js),
|
||||
true
|
||||
);
|
||||
@@ -707,7 +602,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-poster-share',
|
||||
$base_uri . '/assets/js/poster-share.js',
|
||||
['aksrt-script', 'aksrt-share-data'],
|
||||
['loader_js', 'aksrt-share-data'],
|
||||
(string) filemtime($poster_js),
|
||||
true
|
||||
);
|
||||
@@ -742,7 +637,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-sign-register',
|
||||
$base_uri . '/assets/js/sign-register.js',
|
||||
['aksrt-script'],
|
||||
['loader_js'],
|
||||
(string) filemtime($sign_js_path),
|
||||
true
|
||||
);
|
||||
@@ -780,7 +675,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-cms-download',
|
||||
$base_uri . '/assets/js/cms-download.js',
|
||||
['aksrt-script', 'aksrt-runtime'],
|
||||
['loader_js', 'aksrt-runtime'],
|
||||
file_exists($cms_download_js_path) ? (string) filemtime($cms_download_js_path) : $version,
|
||||
true
|
||||
);
|
||||
@@ -794,23 +689,19 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
if ($is_cms_home || $is_preview) {
|
||||
$enqueue_module('home-modules');
|
||||
$enqueue_module('post-card'); // 模块内复用
|
||||
$enqueue_module('header-components'); // header components 模块依赖
|
||||
|
||||
wp_enqueue_script(
|
||||
'aksrt-cms-home-modules',
|
||||
$base_uri . '/assets/js/cms-home-modules.js',
|
||||
['aksrt-script'],
|
||||
['loader_js'],
|
||||
$version,
|
||||
true
|
||||
);
|
||||
}
|
||||
|
||||
if ($is_fixed_homepage) {
|
||||
$enqueue_module('header-components'); // header-slider / hero
|
||||
$enqueue_module('post-card');
|
||||
$homepage_style_deps = file_exists($frontend_bundle)
|
||||
? ['aksrt-frontend-bundle', 'aksrt-header-components', 'aksrt-post-card']
|
||||
: ['aksrt-zibll-compat-vars', 'aksrt-layout', 'aksrt-header-components', 'aksrt-post-card'];
|
||||
$homepage_style_deps = ['_main', 'aksrt-layout', 'aksrt-post-card'];
|
||||
$homepage_style_deps = array_values(array_filter(
|
||||
$homepage_style_deps,
|
||||
static fn(string $handle): bool => wp_style_is($handle, 'registered')
|
||||
@@ -855,7 +746,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-credits',
|
||||
$base_uri . '/assets/js/credits.js',
|
||||
['aksrt-script', 'aksrt-core-modal-runtime', 'aksrt-vip-coordinator', 'aksrt-notyf'],
|
||||
['loader_js', 'aksrt-core-modal-runtime', 'aksrt-vip-coordinator', 'aksrt-notyf'],
|
||||
file_exists($credits_js_path) ? (string) filemtime($credits_js_path) : $version,
|
||||
true
|
||||
);
|
||||
@@ -865,7 +756,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-user-badges',
|
||||
$base_uri . '/assets/js/user-badges.js',
|
||||
['aksrt-script', 'aksrt-core-request', 'aksrt-core-modal-runtime', 'aksrt-core-modal-triggers'],
|
||||
['loader_js', 'aksrt-core-request', 'aksrt-core-modal-runtime', 'aksrt-core-modal-triggers'],
|
||||
(string) filemtime($badges_js_path),
|
||||
true
|
||||
);
|
||||
@@ -886,7 +777,7 @@ $hmb_js = get_template_directory() . '/assets/js/header-newadd.js';
|
||||
wp_enqueue_script(
|
||||
'aksrt-user-badges',
|
||||
$base_uri . '/assets/js/user-badges.js',
|
||||
['aksrt-script', 'aksrt-core-request', 'aksrt-core-modal-runtime', 'aksrt-core-modal-triggers'],
|
||||
['loader_js', 'aksrt-core-request', 'aksrt-core-modal-runtime', 'aksrt-core-modal-triggers'],
|
||||
(string) filemtime($badges_js_path_global),
|
||||
true
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user