Virtual Pages - Source Excerpt 97
Summary
This source excerpt preserves a bounded section of 2IA.org/wp-content/themes/twoia-intelligence/inc/virtual-pages.php so readers can inspect the evidence without opening the full source file.
**Source path:** 2IA.org/wp-content/themes/twoia-intelligence/inc/virtual-pages.php
/**
* Render report-backed starter profiles on the organizations route.
*/
function twoia_render_report_pack_directory_profiles() {
?>
<section class="section section--compact twoia-blueprint-section" aria-labelledby="twoia-report-directory-profiles-title">
<header class="section-header">
<p class="eyebrow"><?php esc_html_e( 'Report-backed profile backlog', 'two-identities-anonymous' ); ?></p>
<h2 id="twoia-report-directory-profiles-title"><?php esc_html_e( 'First Profile Sets To Normalize', 'two-identities-anonymous' ); ?></h2>
<p><?php esc_html_e( 'These are seed profile sets for a verified directory. They are not endorsements, active-service guarantees, or operational guides. Each future profile should carry a last-reviewed date, official-source link, scope note, risk label, and correction path.', 'two-identities-anonymous' ); ?></p>
</header>
<div class="twoia-dossier-grid">
<?php foreach ( twoia_report_pack_directory_profile_sets() as $group ) : ?>
<article class="briefing-panel briefing-panel--compact twoia-dossier-card">
<span class="metadata-label"><?php esc_html_e( 'Profile set', 'two-identities-anonymous' ); ?></span>
<h3><?php echo esc_html( $group['title'] ); ?></h3>
<p><?php echo esc_html( $group['why'] ); ?></p>
<ul>
<?php foreach ( $group['entries'] as $entry ) : ?>
<li>
<strong>
<?php if ( ! empty( $entry['url'] ) ) : ?>
<a href="<?php echo esc_url( $entry['url'] ); ?>" rel="noopener noreferrer" target="_blank"><?php echo esc_html( $entry['name'] ); ?></a>
<?php else : ?>
<?php echo esc_html( $entry['name'] ); ?>
<?php endif; ?>
</strong>
<span><?php echo esc_html( $entry['role'] ); ?></span>
<span><?php echo esc_html( $entry['policy'] ); ?></span>
</li>
<?php endforeach; ?>
</ul>
</article>
<?php endforeach; ?>
</div>
</section>
<?php
}
/**
* Return report-backed archive roadmap items.
*
* @return array
*/
function twoia_report_pack_content_roadmap_items() {
return array(
array(
'lane' => __( 'Directory spine', 'two-identities-anonymous' ),
'title' => __( 'First fifty organization profiles', 'two-identities-anonymous' ),
'output' => __( 'Normalize civil-liberties, digital-rights, OSINT, AI-governance, internet-freedom, and context-only historical entries with stable URLs and review dates.', 'two-identities-anonymous' ),
'records' => __( 'Official page, current program page, contact route, jurisdiction, issue tags, source priority, risk label, correction route.', 'two-identities-anonymous' ),
),
array(
'lane' => __( 'Civil-liberties geography', 'two-identities-anonymous' ),
'title' => __( 'State and country directory buildout', 'two-identities-anonymous' ),
'output' => __( 'Turn the U.S. state and international civil-liberties mapping reports into jurisdiction pages that distinguish affiliates, specialized groups, commissions, and transnational networks.', 'two-identities-anonymous' ),
'records' => __( 'Official site, legal entity record, affiliate page, issue scope, live contact page, last-checked date, language coverage.', 'two-identities-anonymous' ),
),
array(
'lane' => __( 'OSINT workflow', 'two-identities-anonymous' ),
'title' => __( 'Ethical investigation operating system', 'two-identities-anonymous' ),
'output' => __( 'Create reader workflows for requirements, collection limits, preservation, source notes, verification, minimization, AI assistance, and correction.', 'two-identities-anonymous' ),
'records' => __( 'Source class, date seen, archive status, transformation, uncertainty, redaction choice, reviewer, correction path.', 'two-identities-anonymous' ),
),
array(
'lane' => __( 'Public-records engine', 'two-identities-anonymous' ),
'title' => __( 'Procurement and surveillance records library', 'two-identities-anonymous' ),
'output' => __( 'Publish templates for surveillance procurement, AI model governance, retention, audits, complaints, vendor terms, and appeal follow-up.', 'two-identities-anonymous' ),
'records' => __( 'RFP, bid, scoring sheet, contract, amendment, invoice, SOW, training, privacy review, audit right, renewal notice, termination term.', 'two-identities-anonymous' ),
),
array(
'lane' => __( 'Grey-hat boundary', 'two-identities-anonymous' ),
'title' => __( 'Authorization and responsible-disclosure explainer', 'two-identities-anonymous' ),
'output' => __( 'Explain white-hat, grey-hat, and black-hat distinctions, why intent is not permission, and how organizations should use safe-harbor and disclosure policies.', 'two-identities-anonymous' ),
'records' => __( 'Disclosure policy, bug-bounty scope, authorization language, legal-safe-harbor terms, incident-response route, no-extortion rule.', 'two-identities-anonymous' ),
),
array(
'lane' => __( 'Hacktivism context', 'two-identities-anonymous' ),
'title' => __( 'Anonymous, leak culture, and attribution files', 'two-identities-anonymous' ),
'output' => __( 'Build context-heavy pages that separate symbol, claim, evidence, action, motive, attribution confidence, and legal risk without operational content.', 'two-identities-anonymous' ),
'records' => __( 'Claim label, source note, corroboration state, legal record, media effect, attribution confidence, public-interest reason, harm boundary.', 'two-identities-anonymous' ),
),
array(
'lane' => __( 'Trust and disambiguation', 'two-identities-anonymous' ),
'title' => __( '2IA namespace and privacy trust pages', 'two-identities-anonymous' ),
'output' => __( 'Make clear that 2IA means Two Identities Of Anonymous, not Type 2 Initial Attack firefighting, chemistry, robotics, graphics palettes, or an org.ai confusion point.', 'two-identities-anonymous' ),
'records' => __( 'About language, metadata, schema, footer note, privacy defaults, plugin review, secure-drop caveat, support and newsletter provider notes.', 'two-identities-anonymous' ),
),
);
}
/**
* Render report-backed roadmap cards in the archive route.
*/
function twoia_render_report_pack_content_roadmap() {
?>
<section class="section section--compact twoia-blueprint-section" aria-labelledby="twoia-report-roadmap-title">
<header class="section-header">
<p class="eyebrow"><?php esc_html_e( 'Report synthesis', 'two-identities-anonymous' ); ?></p>
<h2 id="twoia-report-roadmap-title"><?php esc_html_e( 'Archive Build Priorities', 'two-identities-anonymous' ); ?></h2>
<p><?php esc_html_e( '2IA is strongest as a working public-intelligence library, not a thin posture site. These lanes turn research priorities into concrete archive outputs.', 'two-identities-anonymous' ); ?></p>
</header>
<div class="twoia-dossier-grid">
<?php foreach ( twoia_report_pack_content_roadmap_items() as $item ) : ?>
<article class="briefing-panel briefing-panel--compact twoia-dossier-card">
<span class="metadata-label"><?php echo esc_html( $item['lane'] ); ?></span>
<h3><?php echo esc_html( $item['title'] ); ?></h3>
<p><strong><?php esc_html_e( 'Output:', 'two-identities-anonymous' ); ?></strong> <?php echo esc_html( $item['output'] ); ?></p>
<p><strong><?php esc_html_e( 'Records or fields:', 'two-identities-anonymous' ); ?></strong> <?php echo esc_html( $item['records'] ); ?></p>
</article>
<?php endforeach; ?>
</div>
</section>
<?php
}
/**
* Render recent posts and category links for the virtual archive route.
*/
function twoia_render_virtual_research_archive() {
global $post;
$recent_posts = get_posts(
array(
'post_type' => function_exists( 'twoia_article_post_types' ) ? twoia_article_post_types() : array( 'post' ),
'post_status' => 'publish',
'posts_per_page' => 6,
'ignore_sticky_posts' => true,
)
);
$recent_posts = array_values(
array_filter(
$recent_posts,
static function ( $candidate_post ) {
return ! ( function_exists( 'twoia_is_default_placeholder_post' ) && twoia_is_default_placeholder_post( $candidate_post ) );
}
)
);
?>
<?php if ( function_exists( 'twoia_render_publication_lanes' ) ) : ?>
<?php twoia_render_publication_lanes(); ?>
<?php endif; ?>
<?php twoia_render_system_failure_blueprints(); ?>
<?php twoia_render_source_class_matrix(); ?>
<?php twoia_render_issue_hub_blueprints(); ?>
<?php twoia_render_archive_toolkits_and_planning(); ?>