37 lines
812 B
TypeScript
Raw Normal View History

2025-02-07 10:50:40 +07:00
import payloadConfig from "@/payload.config";
import { getPayload } from "payload";
export const fetchPageBySlug = async ({ slug }: { slug: string | undefined }) => {
const payload = await getPayload({ config: payloadConfig });
const result = await payload.find({
collection: "pages",
// draft,
limit: 1,
pagination: false,
// overrideAccess: draft,
where: {
slug: {
equals: slug,
},
},
});
if (!result.docs?.[0]) {
return null;
}
const data = result.docs[0];
const heroImgUrl = typeof data.hero_img !== "number" ? (data?.hero_img?.url ?? "") : "";
const heroImgAlt = typeof data.hero_img !== "number" ? (data?.hero_img?.alt ?? "") : "";
return {
...data,
heroImg: {
url: heroImgUrl,
alt: heroImgAlt,
},
};
};