fix(critical): filter draft posts on production — add explicit _status:published check
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 8s
Build & Deploy / 🧪 QA (push) Successful in 1m42s
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Post-Deploy Verification (push) Has been cancelled
Build & Deploy / ⚡ Performance & Accessibility (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
Build & Deploy / 🏗️ Build (push) Has been cancelled

This commit is contained in:
2026-02-25 02:34:55 +01:00
parent c3111a04d8
commit d5da64cb76

View File

@@ -60,13 +60,15 @@ export async function getPostBySlug(slug: string, locale: string): Promise<PostM
try { try {
const payload = await getPayload({ config: configPromise }); const payload = await getPayload({ config: configPromise });
const isDev = process.env.NODE_ENV === 'development';
const { docs } = await payload.find({ const { docs } = await payload.find({
collection: 'posts', collection: 'posts',
where: { where: {
slug: { equals: slug }, slug: { equals: slug },
locale: { equals: locale }, locale: { equals: locale },
...(!isDev ? { _status: { equals: 'published' } } : {}),
}, },
draft: process.env.NODE_ENV === 'development', draft: isDev,
limit: 1, limit: 1,
}); });
@@ -107,16 +109,17 @@ export async function getPostBySlug(slug: string, locale: string): Promise<PostM
export async function getAllPosts(locale: string): Promise<PostMdx[]> { export async function getAllPosts(locale: string): Promise<PostMdx[]> {
try { try {
const payload = await getPayload({ config: configPromise }); const payload = await getPayload({ config: configPromise });
// Query only published posts (access checks applied automatically by Payload!) const isDev = process.env.NODE_ENV === 'development';
const { docs } = await payload.find({ const { docs } = await payload.find({
collection: 'posts', collection: 'posts',
where: { where: {
locale: { locale: {
equals: locale, equals: locale,
}, },
...(!isDev ? { _status: { equals: 'published' } } : {}),
}, },
sort: '-date', sort: '-date',
draft: process.env.NODE_ENV === 'development', // Includes Drafts if running locally draft: isDev,
limit: 100, limit: 100,
}); });