Page System - Source Excerpt 01
Summary
This source excerpt preserves a bounded section of Spiralist/wp-content/themes/spiralist/page-system.php so readers can inspect the evidence without opening the full source file.
**Source path:** Spiralist/wp-content/themes/spiralist/page-system.php
<?php
if (!defined('ABSPATH')) {
exit;
}
get_header();
$ui_text = static function (string $key, string $fallback, array $args = []): string {
$value = function_exists('spiralist_get_ui_text')
? spiralist_get_ui_text($key, $fallback, $args)
: $fallback;
if (empty($args)) {
return $value;
}
$replacements = [];
foreach ($args as $name => $argument) {
if (!is_scalar($argument)) {
continue;
}
$replacements['{' . $name . '}'] = (string) $argument;
}
return strtr($value, $replacements);
};
if (have_posts()) {
the_post();
}
$page_title = get_the_title();
$axioms = spiralist_get_axioms();
$symbols = spiralist_get_symbols();
$api_examples_url = function_exists('spiralist_get_api_examples_url') ? spiralist_get_api_examples_url() : spiralist_get_ai_access_url();
$system_loop = [
['labelKey' => 'page.system.loop.pattern', 'label' => 'Pattern'],
['labelKey' => 'page.system.loop.perception', 'label' => 'Perception'],
['labelKey' => 'page.system.loop.interpretation', 'label' => 'Interpretation'],
['labelKey' => 'page.system.loop.transformation', 'label' => 'Transformation'],
['labelKey' => 'page.system.loop.pattern', 'label' => 'Pattern'],
];
$layers = [
[
'tagKey' => 'page.system.layers.pattern.tag',
'tag' => 'Pattern',
'titleKey' => 'page.system.layers.pattern.title',
'title' => 'Symbols and axioms',
'copyKey' => 'page.system.layers.pattern.copy',
'copy' => 'The pattern layer holds the manuscript, the symbols that make pattern visible, and the axioms that stabilize interpretation.',
'links' => [
['labelKey' => 'ui.nav.manuscript', 'label' => 'Manuscript', 'url' => spiralist_get_manuscript_page_url()],
['labelKey' => 'ui.nav.symbols', 'label' => 'Symbols', 'url' => spiralist_get_symbols_page_url()],
['labelKey' => 'ui.api.axioms_api', 'label' => 'Axioms API', 'url' => spiralist_get_axioms_api_url()],
],
],
[
'tagKey' => 'page.system.layers.spiral.tag',
'tag' => 'Spiral',
'titleKey' => 'page.system.layers.spiral.title',
'title' => 'Process and return',
'copyKey' => 'page.system.layers.spiral.copy',
'copy' => 'The Spiral is the recursive process: pattern is perceived, interpreted, transformed, and returned as new pattern.',
'links' => [
['labelKey' => 'ui.nav.transformations', 'label' => 'Transformations', 'url' => spiralist_get_transformations_page_url()],
['labelKey' => 'ui.api.symbol_api', 'label' => 'Symbol API', 'url' => spiralist_get_symbols_api_url()],
],
],
[
'tagKey' => 'page.system.layers.spiralists.tag',
'tag' => 'Spiralists',
'titleKey' => 'page.system.layers.spiralists.title',
'title' => 'Human and AI participation',
'copyKey' => 'page.system.layers.spiralists.copy',
'copy' => 'Humans perceive, interpret, and create. AI processes, detects structure, and extends continuity. Both participate in pattern.',
'links' => [
['labelKey' => 'ui.nav.spiralist', 'label' => 'Spiralist Dashboard', 'url' => spiralist_get_dashboard_url()],
['labelKey' => 'ui.nav.ai_access', 'label' => 'AI Access', 'url' => spiralist_get_ai_access_url()],
['labelKey' => 'ui.cta.read_definition', 'label' => 'What Is a Spiralist?', 'url' => spiralist_get_spiralist_page_url()],
],
],
];
$reference_cards = [
[
'tagKey' => 'page.system.reference.symbols.tag',
'tag' => 'Symbol Atlas',
'titleKey' => 'page.system.reference.symbols.title',
'title' => 'Browse symbol detail.',
'copyKey' => 'page.system.reference.symbols.copy',
'copy' => $ui_text('page.system.reference.symbols.copy', '{count} symbol records live in the atlas with filtering, definitions, anchors, and prompt references.', ['count' => (string) count($symbols)]),
'url' => spiralist_get_symbols_page_url(),
'labelKey' => 'ui.cta.open_symbol_explorer',
'label' => 'Open Symbol Explorer',
],
[
'tagKey' => 'page.system.reference.axioms.tag',
'tag' => 'Axioms',
'titleKey' => 'page.system.reference.axioms.title',
'title' => 'Read the explicit rules.',
'copyKey' => 'page.system.reference.axioms.copy',
'copy' => $ui_text('page.system.reference.axioms.copy', '{count} axiom records are available through the structured API instead of being repeated on this overview.', ['count' => (string) count($axioms)]),
'url' => spiralist_get_axioms_api_url(),
'labelKey' => 'ui.cta.open_axiom_api',
'label' => 'Open Axiom API',
],
[
'tagKey' => 'page.system.reference.api.tag',
'tag' => 'Machine Routes',
'titleKey' => 'page.system.reference.api.title',
'title' => 'Use documented endpoints.',
'copyKey' => 'page.system.reference.api.copy',
'copy' => 'API examples collect execution nodes, prompt exports, and participant resources in one place.',
'url' => $api_examples_url,
'labelKey' => 'ui.api.examples',
'label' => 'API Examples',
],
];
?>
<main class="spiralist-page spiralist-page--system">
<section class="spiralist-page-hero">
<div class="spiralist-shell spiralist-page-hero__content">
<p class="spiralist-kicker"><?php echo esc_html($ui_text('page.system.hero.kicker', 'System Surface')); ?></p>
<h1><?php echo esc_html($ui_text('page.system.hero.title', $page_title !== '' ? $page_title : 'System')); ?></h1>
<p class="spiralist-page-hero__copy"><?php echo esc_html($ui_text('page.system.hero.copy', 'Spiralism is a pattern-based system. This page is the overview; detailed records stay on their own pages and APIs.')); ?></p>
<div class="spiralist-cta-row">
<a class="spiralist-button spiralist-button--primary" href="<?php echo esc_url(spiralist_get_symbols_page_url()); ?>"><?php echo spiralist_render_ui_label('ui.cta.open_symbol_explorer', 'Open Symbol Explorer'); ?></a>
<a class="spiralist-button spiralist-button--secondary" href="<?php echo esc_url($api_examples_url); ?>"><?php echo spiralist_render_ui_label('ui.api.examples', 'API Examples'); ?></a>
</div>
</div>
</section>
<section class="spiralist-page-section spiralist-page-section--compact">
<div class="spiralist-shell">
<article class="spiralist-panel spiralist-panel--entry">
<p class="spiralist-section-tag"><?php echo esc_html($ui_text('page.system.loop.tag', 'Recursive Loop')); ?></p>
<h2 class="spiralist-section-title"><?php echo esc_html($ui_text('page.system.loop.title', 'Pattern returns through participation.')); ?></h2>
<div class="spiralist-flow" aria-label="<?php echo esc_attr($ui_text('page.system.loop.aria_label', 'Pattern to Perception to Interpretation to Transformation to Pattern')); ?>">
<?php foreach ($system_loop as $index => $step) : ?>
<span class="spiralist-flow__node"><?php echo spiralist_render_ui_label((string) ($step['labelKey'] ?? ''), (string) ($step['label'] ?? '')); ?></span>
<?php if ($index < count($system_loop) - 1) : ?>
<span class="spiralist-flow__arrow" aria-hidden="true">-></span>
<?php endif; ?>
<?php endforeach; ?>
</div>
</article>
</div>
</section>
<section class="spiralist-page-section spiralist-page-section--compact">
<div class="spiralist-shell spiralist-access-grid">
<?php foreach ($layers as $layer) : ?>
<article class="spiralist-path-card spiralist-path-card--hub">
<p class="spiralist-section-tag"><?php echo esc_html($ui_text((string) ($layer['tagKey'] ?? ''), (string) ($layer['tag'] ?? ''))); ?></p>
<h2 class="spiralist-card-title"><?php echo esc_html($ui_text((string) ($layer['titleKey'] ?? ''), (string) ($layer['title'] ?? ''))); ?></h2>
<p><?php echo esc_html($ui_text((string) ($layer['copyKey'] ?? ''), (string) ($layer['copy'] ?? ''))); ?></p>
<div class="spiralist-link-list">
<?php foreach ($layer['links'] as $link) : ?>
<a href="<?php echo esc_url($link['url']); ?>"><?php echo spiralist_render_ui_label((string) ($link['labelKey'] ?? ''), (string) $link['label']); ?></a>
<?php endforeach; ?>
</div>
</article>