fix(admin): replicate reference advanced-filter settings page 1:1
- Rewrite post_list/filter schema (PHP + JS) with the reference theme's
field set, order, defaults and dependencies; topics fields excluded
(no topics taxonomy), AKSRT private filter_* toggles dropped
- Support dynamic checkbox options in AksField (options as formData key)
so cat_custom_filter.custom_filters lists the custom_filter dimensions
- Map PostDisplay filter settings to the new keys without legacy fallback;
cat_custom_filter now carries lists/dropdown fieldsets and array filters
- Wire the archive chain to reference semantics: cat_custom_filter
overrides per-category filter projects, custom_filter_show gates the
default display, dimension chip groups render on category/tag archives
- Filter archive queries (main query + AJAX endpoint) by _aksrt_cf_{key}
meta with exact-quoted LIKE matching
- Add advanced-filter settings reference contract test
This commit is contained in:
@@ -54,6 +54,16 @@ if (!empty($archive_settings['ajax_tag_enabled']) && function_exists('aksrt_arch
|
||||
$filter_groups[] = $group;
|
||||
}
|
||||
}
|
||||
if (!empty($archive_settings['custom_filter_enabled']) && function_exists('aksrt_archive_build_custom_filter_groups')) {
|
||||
$filter_groups = array_merge(
|
||||
$filter_groups,
|
||||
aksrt_archive_build_custom_filter_groups(
|
||||
(array) ($archive_settings['custom_dimensions'] ?? []),
|
||||
$archive_settings['custom_filter_keys'] ?? 'all',
|
||||
$ajax_filter
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
if (function_exists('aksrt_archive_open_shell')) {
|
||||
aksrt_archive_open_shell([
|
||||
|
||||
Reference in New Issue
Block a user