diff --git a/src/app/news/NewsPageClient.tsx b/src/app/news/NewsPageClient.tsx index d080e3f..8ab308e 100644 --- a/src/app/news/NewsPageClient.tsx +++ b/src/app/news/NewsPageClient.tsx @@ -31,7 +31,26 @@ function parseArticleDate(dateStr: string): Date { return new Date(dateStr); } -export default function NewsPage({ articles }: { articles: Article[] }) { +interface NewsPageProps { + articles: Article[]; + /** Eyebrow label rendered above the H1. Defaults to "News". */ + kicker?: string; + /** Page H1. Defaults to "Industry News". */ + heading?: string; + /** Subhead under the H1. */ + subtitle?: string; + /** Hide the AI Suggested Articles sidebar widget (it surfaces general + recommendations and shouldn't appear on curated views like Featured). */ + hideAiSuggestions?: boolean; +} + +export default function NewsPage({ + articles, + kicker = "News", + heading = "Industry News", + subtitle = "Breaking news and industry updates from the world of broadcast engineering", + hideAiSuggestions = false, +}: NewsPageProps) { const allArticles = Array.isArray(articles) ? articles : []; const searchParams = useSearchParams(); @@ -133,11 +152,11 @@ export default function NewsPage({ articles }: { articles: Article[] }) {
- News + {kicker}
-

Industry News

-

Breaking news and industry updates from the world of broadcast engineering

+

{heading}

+

{subtitle}

@@ -304,7 +323,7 @@ export default function NewsPage({ articles }: { articles: Article[] }) { {/* AI Suggested Articles */} - + {!hideAiSuggestions && }

diff --git a/src/app/news/featured/page.tsx b/src/app/news/featured/page.tsx index b74787c..085869b 100644 --- a/src/app/news/featured/page.tsx +++ b/src/app/news/featured/page.tsx @@ -16,7 +16,13 @@ export default async function FeaturedNewsPage() { const articles = await getLegacyFeaturedArticles(200); return ( - + ); } diff --git a/src/lib/articles/legacy-source.ts b/src/lib/articles/legacy-source.ts index 7ca64d0..71e336a 100644 --- a/src/lib/articles/legacy-source.ts +++ b/src/lib/articles/legacy-source.ts @@ -340,12 +340,15 @@ export async function getLegacyArticlesBySection( export async function getLegacyFeaturedArticles(limit = 200): Promise { try { + // Strict mode: only rows the editorial team has explicitly pinned via + // wp_imported_posts.featured=true. The broader category='featured' pool + // also contains older PR-leaning items that should not surface on the + // public Featured Editorial page. const { data, error } = await client() .from("wp_imported_posts") .select(SELECT_COLS + ",featured") .eq("status", "published") - .ilike("category", "featured") - .order("featured", { ascending: false }) + .eq("featured", true) .order("wp_published_at", { ascending: false, nullsFirst: false }) .limit(limit); if (error || !data) return [];