fix(list): wire Zibll list/card display chain end-to-end

Resolve post list mode from global list_type + surface card overrides so
homepage/archives/AJAX honor admin list and card style settings.
This commit is contained in:
2026-07-12 20:56:38 +08:00
parent b2815614d1
commit d73a7af25e
17 changed files with 444 additions and 151 deletions
@@ -301,13 +301,20 @@ class AKSRT_Admin_Global_Controller extends AKSRT_Admin_Controller_Base {
$query = new WP_Query($args);
$mode = in_array($view_mode, ['card', 'list'], true) ? $view_mode : 'list';
$mode = in_array($view_mode, ['card', 'list'], true) ? $view_mode : '';
$html = '';
if (function_exists('aksrt_render_post_list')) {
$html = aksrt_render_post_list($query, [
'mode' => $mode,
'context' => 'home',
], false);
$overrides = ['context' => 'home'];
if ($mode !== '') {
$overrides['mode'] = $mode;
}
$render_config = function_exists('aksrt_resolve_post_list_render_config')
? aksrt_resolve_post_list_render_config([
'context' => 'home',
'overrides' => $overrides,
])
: array_merge(['mode' => ($mode !== '' ? $mode : 'list'), 'context' => 'home'], $overrides);
$html = aksrt_render_post_list($query, $render_config, false);
} elseif ($query->have_posts()) {
$html = '<div class="posts-row aksrt-homepage__posts" data-view="' . esc_attr($mode) . '">';
while ($query->have_posts()) {