feat(frontend): replace lazy loading with zibll lazysizes

This commit is contained in:
2026-08-18 01:33:38 +08:00
parent 02571eecd6
commit 435ee1daa7
78 changed files with 1515 additions and 909 deletions
+29 -6
View File
@@ -90,11 +90,21 @@ trait ScriptsPart1c {
true
);
// Zibll lazySizes is the only media lazy-loading runtime.
$lazysizes_js = get_template_directory() . '/assets/js/lazysizes.js';
wp_enqueue_script(
'aksrt-lazysizes',
$base_uri . '/assets/js/lazysizes.js',
[],
file_exists($lazysizes_js) ? (string) filemtime($lazysizes_js) : $version,
true
);
// Rehydrate system — must load before aksrt-script so AksrtFrontend is available
wp_enqueue_script(
'aksrt-rehydrate',
$base_uri . '/assets/js/rehydrate.js',
[],
['aksrt-lazysizes'],
file_exists(get_template_directory() . '/assets/js/rehydrate.js')
? (string) filemtime(get_template_directory() . '/assets/js/rehydrate.js')
: $version,
@@ -597,13 +607,26 @@ trait ScriptsPart1c {
'floatActionsId' => 'float-right-btns',
'tabbarId' => 'footer-tabbar',
],
'themeUri' => get_template_directory_uri(),
'codeHighlight' => class_exists('\AKSRT\Settings\Settings')
'themeUri' => get_template_directory_uri(),
'lazyScopes' => [
'lazy_posts_thumb' => aksrt_is_lazy('lazy_posts_thumb'),
'lazy_avatar' => aksrt_is_lazy('lazy_avatar'),
'lazy_posts_content' => aksrt_is_lazy('lazy_posts_content'),
'lazy_comment' => aksrt_is_lazy('lazy_comment'),
'lazy_private' => aksrt_is_lazy('lazy_private'),
'lazy_sider' => aksrt_is_lazy('lazy_sider'),
'lazy_cover' => aksrt_is_lazy('lazy_cover'),
'lazy_other' => aksrt_is_lazy('lazy_other'),
],
'lazyThumbs' => [
'default' => aksrt_get_lazy_thumb(),
'sm' => aksrt_get_lazy_thumb('sm'),
'lg' => aksrt_get_lazy_thumb('lg'),
],
'lazyAvatar' => aksrt_get_default_avatar_url(),
'codeHighlight' => class_exists('\AKSRT\Settings\Settings')
? \AKSRT\Settings\Settings::get_code_highlight_config()
: ['enabled' => true, 'lightTheme' => 'enlighter', 'darkTheme' => 'monokai', 'lineNumbers' => false, 'showButtons' => true, 'maxHeight' => 500],
'lazyload' => class_exists('\AKSRT\Settings\Settings')
? \AKSRT\Settings\Settings::get_lazyload_config()
: ['enabled' => true, 'animation' => 'blur', 'placeholder_url' => '', 'blur' => true],
'systemNotice' => class_exists('\AKSRT\Settings\Settings')
? \AKSRT\Settings\Settings::get_system_notice_config()
: ['enabled' => false],