feat(nav): rewrite top header to zibll 1:1 DOM/CSS/JS contract

Replace hybrid site-nav/drawer shell with zibll navbar-top layouts 1/2/3,
body.mobile-navbar-show drawer, wired NavWalker + aksrt_menu_options meta,
nav_folding/chevron, VIP switches, and SPA/PHP schema parity. No dual-class
compat paths.
This commit is contained in:
2026-07-22 11:18:34 +08:00
parent b8ee6b6a43
commit 259dbdbe04
28 changed files with 2463 additions and 885 deletions
+9
View File
@@ -117,6 +117,10 @@ if (!function_exists('aksrt_header_payvip_bar')) :
return '';
}
$nav = class_exists('\AKSRT\Settings\Settings')
? \AKSRT\Settings\Settings::get_header_nav_settings()
: ['nav_user_pay_vip' => true];
$level = function_exists('aksrt_get_user_vip_level') ? (int) aksrt_get_user_vip_level($user_id) : 0;
if ($level > 0) {
$levels = is_array($vip['levels'] ?? null) ? $vip['levels'] : [];
@@ -139,6 +143,11 @@ if (!function_exists('aksrt_header_payvip_bar')) :
return $html;
}
// Open-VIP CTA only when user-box switch is on (zibll nav_user_pay_vip).
if (empty($nav['nav_user_pay_vip'])) {
return '';
}
return '<div class="mt10 em09 aksrt-header-payvip">'
. '<a class="pay-vip but radius4 payvip-icon btn-block navbar-cta" href="javascript:;" vip-level="1">'
. '<i class="fas fa-gem" aria-hidden="true"></i>'