fix(page-display): isolate header component page scopes

This commit is contained in:
2026-08-19 13:45:54 +08:00
parent d4a9b7fd98
commit a5ed4bbb6f
3 changed files with 61 additions and 33 deletions
@@ -225,5 +225,8 @@ test('save contract rejects invalid input and round-trips canonical nested value
generic_page_excludes_center: false,
templated_public_user_home: true,
templated_user_center: true,
home_excludes_page: false,
home_excludes_public_home: false,
home_excludes_user_center: false,
})
})
@@ -88,7 +88,13 @@ namespace {
function is_admin(): bool { return false; }
function wp_is_mobile(): bool { return false; }
function is_home(): bool { return $GLOBALS['aksrt_visibility_query'] === 'home'; }
function is_home(): bool {
// Custom rewrites can leave WordPress's posts-page flag set even though
// the theme resolves the request to another front-end surface.
return in_array($GLOBALS['aksrt_visibility_query'], [
'home', 'page', 'user_home', 'user_center', 'user_home_page', 'user_center_page',
], true);
}
function is_front_page(): bool { return $GLOBALS['aksrt_visibility_query'] === 'home'; }
function is_category(): bool { return $GLOBALS['aksrt_visibility_query'] === 'category'; }
function is_tag(): bool { return $GLOBALS['aksrt_visibility_query'] === 'tag'; }
@@ -214,6 +220,9 @@ namespace {
'generic_page_excludes_center' => aksrt_visibility_case('user_center_page', ['page']),
'templated_public_user_home' => aksrt_visibility_case('user_home_page', ['user_home']),
'templated_user_center' => aksrt_visibility_case('user_center_page', ['user_center']),
'home_excludes_page' => aksrt_visibility_case('page', ['home']),
'home_excludes_public_home' => aksrt_visibility_case('user_home', ['home']),
'home_excludes_user_center' => aksrt_visibility_case('user_center', ['home']),
];
echo json_encode([