Generate the metadata for a page in Next.js
Use the genPageMetadata function to generate the metadata for a page in Next.js, including the title, description, canonical URL, and Open Graph and Twitter metadata.
Requirements
Section titled “Requirements”Before using the file, make sure your project meets the following requirements:
- Next.js 13.2.0 or higher
- Next.js App Router
Parameters
Section titled “Parameters”It receives an object with the following properties:
title(string, required): The title of the pagedescription(string, required): The description of the pagepageRoute(string, required): The URL route for the pageogImg(string): The URL of the Open Graph image
Add the file to your project
Section titled “Add the file to your project”Copy the genPageMetadata.ts or genPageMetadata.js file to your project.
Edit the siteConfig object
Section titled “Edit the siteConfig object”Update the siteConfig object in the genPageMetadata.ts or genPageMetadata.js file with your site’s base URL, name and default URL of the Open Graph image.
const siteConfig: SiteConfig = { baseUrl: "https://novajs.dev", siteName: "Nova.js", defaultOgImg: "/og-default.png",};const siteConfig = { baseUrl: "https://novajs.dev", siteName: "Nova.js", defaultOgImg: "/og-default.png",};Import the genPageMetadata function
Section titled “Import the genPageMetadata function”Import the genPageMetadata function into every page where you want to generate metadata.
import { genPageMetadata } from "@/utils/genPageMetadata";
export const metadata = genPageMetadata({ title: "Nova.js - A collection of dependency-free React hooks", description: "Carefully developed React hooks that you can copy and paste into your project.", pageRoute: "/", ogImg: "/og-landing.png",});