Template Tags - Source Excerpt 01
Summary
This source excerpt preserves a bounded section of Anti-Christ.org/wp-content/themes/antichrist-engine/inc/template-tags.php so readers can inspect the evidence without opening the full source file.
**Source path:** Anti-Christ.org/wp-content/themes/antichrist-engine/inc/template-tags.php
<?php
/**
* Template helper functions.
*
* @package Antichrist_Engine
*/
if (!defined('ABSPATH')) {
exit;
}
/**
* Prints the posted-on meta line.
*
* @return void
*/
function antichrist_engine_posted_on()
{
echo '<div class="entry-meta">';
echo '<span>' . esc_html(get_the_date()) . '</span>';
echo '<span>' . esc_html(get_the_author()) . '</span>';
echo '<span>' . esc_html(antichrist_engine_reading_time()) . '</span>';
echo '</div>';
}
/**
* Gets a stable record ID for the current post.
*
* @param int $post_id Optional post ID.
* @return string
*/
function antichrist_engine_post_record_id($post_id = 0)
{
$post_id = $post_id ? (int) $post_id : get_the_ID();
return sprintf('FFTAC-PUB-%04d', $post_id);
}
/**
* Gets the publication classification for a post.
*
* @param int $post_id Optional post ID.
* @return string
*/
function antichrist_engine_post_classification($post_id = 0)
{
$post_id = $post_id ? (int) $post_id : get_the_ID();
$series = antichrist_engine_post_series($post_id);
if ($series) {
return $series['classification'];
}
if (is_sticky($post_id)) {
return __('Featured journal publication', 'antichrist-engine');
}
return __('Journal publication', 'antichrist-engine');
}
/**
* Gets the current post's publication series if matched to a known track.
*
* @param int $post_id Optional post ID.
* @return array<string, string>
*/
function antichrist_engine_post_series($post_id = 0)
{
$post_id = $post_id ? (int) $post_id : get_the_ID();
$series_data = antichrist_engine_foundation_publication_series();
$categories = get_the_category($post_id);
if (empty($categories) || is_wp_error($categories)) {
return array();
}
foreach ($categories as $category) {
if (isset($series_data[$category->slug])) {
return $series_data[$category->slug];
}
}
return array();
}
/**
* Gets the current post's publication series slug if available.
*
* @param int $post_id Optional post ID.
* @return string
*/
function antichrist_engine_post_series_slug($post_id = 0)
{
$post_id = $post_id ? (int) $post_id : get_the_ID();
$categories = get_the_category($post_id);
$series = antichrist_engine_foundation_publication_series();
if (empty($categories) || is_wp_error($categories)) {
return '';
}
foreach ($categories as $category) {
if (isset($series[$category->slug])) {
return $category->slug;
}
}
return '';
}
/**
* Gets the primary topic label for a post.
*
* @param int $post_id Optional post ID.
* @return string
*/
function antichrist_engine_post_primary_topic($post_id = 0)
{
$post_id = $post_id ? (int) $post_id : get_the_ID();
$categories = get_the_category($post_id);
if (!empty($categories) && !is_wp_error($categories)) {
return $categories[0]->name;
}
return __('General inquiry', 'antichrist-engine');
}
/**
* Gets the release profile for the current post.
*
* @param int $post_id Optional post ID.
* @return array<string, mixed>
*/
function antichrist_engine_post_release_profile($post_id = 0)
{
$post_id = $post_id ? (int) $post_id : get_the_ID();
$series = antichrist_engine_post_series($post_id);
$series_slug = antichrist_engine_post_series_slug($post_id);
$reading_time = antichrist_engine_reading_time($post_id);
$profile = array(
'role_label' => __('Archive file', 'antichrist-engine'),
'role_summary' => __('A governed public file that extends the archive without pretending to outrank doctrine or the canonical record.', 'antichrist-engine'),
'best_use' => __('Best when a reader needs the public argument in full rather than a fragment, route card, or index summary.', 'antichrist-engine'),
'audience' => !empty($series['audience']) ? (string) $series['audience'] : __('Readers following the public archive as it matures through publication, review, and revision.', 'antichrist-engine'),
'packet_title' => __('Use this file as part of the governed archive', 'antichrist-engine'),
'packet_summary' => __('A journal file is strongest when it stays connected to its track, its supporting proof surface, and the standards that keep publication from pretending to be canon.', 'antichrist-engine'),
'packet_points' => array(
__('Use the stable record ID when citing or sharing the file.', 'antichrist-engine'),
__('Keep the related track and supporting research surface nearby while evaluating the argument.', 'antichrist-engine'),
__('Treat publication as active philosophical work still answerable to standards, review, and later amendment pressure.', 'antichrist-engine'),
),
'routes' => array(
array(
'eyebrow' => __('Track Board', 'antichrist-engine'),
'title' => __('Compare the journal tracks', 'antichrist-engine'),
'summary' => __('See how the current file sits beside the other publication lanes and the broader release system.', 'antichrist-engine'),
'target' => 'journal',
'anchor' => 'track-board',
'cta' => __('Open the track board', 'antichrist-engine'),
),
array(
'eyebrow' => __('Standards', 'antichrist-engine'),
'title' => __('Review publication standards', 'antichrist-engine'),
'summary' => __('Reopen the governing file that distinguishes archive publication from doctrine and formal amendment.', 'antichrist-engine'),
'target' => 'standards',
'anchor' => 'archive-pipeline',
'cta' => __('Review publication standards', 'antichrist-engine'),
),
),
'reading_time' => $reading_time,
);
switch ($series_slug) {
case 'verified-research':
$profile['role_label'] = __('Citation dossier', 'antichrist-engine');
$profile['role_summary'] = __('This file should function like a citation-facing dossier: slower, sourced, and durable enough to survive disagreement.', 'antichrist-engine');
$profile['best_use'] = __('Best when a journalist, skeptic, or researcher needs the public file and the supporting evidence stack close together.', 'antichrist-engine');
$profile['packet_title'] = __('Use this dossier with the atlas and the standards file', 'antichrist-engine');
$profile['packet_summary'] = __('Verified Research files work best when the journal text, the claim index, and the verification rules remain visible as one packet rather than being split apart.', 'antichrist-engine');
$profile['packet_points'] = array(
__('Compare the file with the claim index and source-trail routes before quoting it as definitive.', 'antichrist-engine'),
__('Use the record ID and track label when passing the file to researchers or editors.', 'antichrist-engine'),
__('Keep the standards file nearby if the dispute is really about verification, evidence, or editorial thresholds.', 'antichrist-engine'),
);
$profile['routes'] = array(
array(
'eyebrow' => __('Atlas Proof', 'antichrist-engine'),
'title' => __('Open the claim index behind the dossier', 'antichrist-engine'),
'summary' => __('Return to the atlas route where dossiers, related claims, and supporting source trails remain queryable.', 'antichrist-engine'),
'target' => 'research',
'anchor' => 'claim-index',
'cta' => __('Open the claim index', 'antichrist-engine'),
),
array(
'eyebrow' => __('Export Desk', 'antichrist-engine'),
'title' => __('Pair the file with reusable research exports', 'antichrist-engine'),
'summary' => __('Use flat-file exports when the conversation needs tables, provenance, or machine-readable support beside the prose file.', 'antichrist-engine'),
'target' => 'downloads',
'anchor' => 'research-data-exports',
'cta' => __('Open research exports', 'antichrist-engine'),
),
);
break;
case 'history-of-the-spirit':
$profile['role_label'] = __('Historical sequence file', 'antichrist-engine');