SEO
Directories are a true cheat code for SEO, don't sleep on it!
import CategoryLayout from "@/app/layouts/CategoryLayout";
import { genPageMetadata } from "@/app/seo";
import { metadata } from "@/data/config/metadata";
import prisma from "@/lib/prisma";
export async function generateMetadata({
params,
}: {
params: { slug: string };
}) {
const categoryData = prisma.category.findUnique({
where: { slug: params.slug },
select: {
name: true,
slug: true,
},
});
const category = await categoryData;
if (!category) {
return genPageMetadata({
title: "Category not found",
});
}
return genPageMetadata({
title: `Best ${category.name} ${metadata.productLabel}s`,
description: `Find all the best ${category.name} ${metadata.productLabel}s.`,
url: `/categories/${category.slug}`,
});
}
export async function generateStaticParams() {
const categoriesData = prisma.category.findMany();
const categories = await categoriesData;
return categories.map((category) => ({ slug: category.slug }));
}
export default function Category({ params }: { params: { slug: string } }) {
return <CategoryLayout slug={params.slug} />;
}Indexing
Last updated