Implements weeks 1–4 of the CMO brand identity sprint. Key changes: - CSS token system (assets/css/brand.css): full palette, verdict tokens, component styles - Poppins/Inter/IBM Plex Mono Google Fonts loading with preload - Full favicon/PWA/OG asset pack (peptide-repo-brand v1.0.0) - 5-state verdict badge + card + evidence row components - verdict_state + signal_row post meta on pr_peptide CPT - Homepage hero: teal bg, new H1/subhead, lime search bar - Archive verdict filter chips (CSS + pre_get_posts query hook) - Affiliate disclosure component (3 contexts) - page-how-we-review.php + page-about.php templates - Footer Our Method links - a11y: skip-to-content, reduced-motion, aria on verdict badges QA: PASS (0 blockers) — qa-reviews/peptide-starter-theme/2026-04-26-a2bff59.md Staging verified: https://staging.peptiderepo.com
35 lines
953 B
PHP
35 lines
953 B
PHP
<?php
|
|
/**
|
|
* Verdict Evidence Signal Row Component
|
|
*
|
|
* Displays an inset row of evidence signals with glyphs.
|
|
* Accepts $args['signals'] as array of ['glyph' => '...', 'label' => '...']
|
|
*
|
|
* @package peptide-starter
|
|
*/
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
$signals = isset( $args['signals'] ) && is_array( $args['signals'] ) ? $args['signals'] : array();
|
|
|
|
if ( empty( $signals ) ) {
|
|
return;
|
|
}
|
|
?>
|
|
<div class="pr-evidence-row">
|
|
<?php foreach ( $signals as $signal ) : ?>
|
|
<?php
|
|
$glyph = isset( $signal['glyph'] ) ? sanitize_text_field( $signal['glyph'] ) : '';
|
|
$label = isset( $signal['label'] ) ? sanitize_text_field( $signal['label'] ) : '';
|
|
?>
|
|
<?php if ( ! empty( $glyph ) && ! empty( $label ) ) : ?>
|
|
<div class="pr-evidence-row__item">
|
|
<span class="pr-evidence-row__glyph"><?php echo esc_html( $glyph ); ?></span>
|
|
<span><?php echo esc_html( $label ); ?></span>
|
|
</div>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|
|
</div>
|