#How to update og:title in app router during serverside rendering
1 messages · Page 1 of 1 (latest)
Based on the information provided in the extracts, you can update the og:title during server-side rendering by using the getServerSideProps function in your page component. This function allows you to fetch data server-side and pass it as props to your page.
Here's an example of how you can do it:
import { GetServerSideProps, NextPage } from "next"
type Props = { data: any; id: string; openGraphData: any[] };
const ExamplePage: NextPage<Props> = ({ data, id, openGraphData }) => {
return (
<div>
{/* Your page content */}
</div>
)
}
export const getServerSideProps: GetServerSideProps = async ({ query }) => {
const { id } = query;
const data = id ? await getDataFromSomewhere(id as string) : null;
let title = "Your Default Title";
let description = "Your Default Description";
let imageUrl = "<https://example.com/default-image.jpg";>
if (data) {
title = `${data.title} - Example`;
description = `${data.title} - ${data.plot} (example description)`;
imageUrl = `${data.poster}`;
}
const openGraphData = [
{ property: "og:title", content: title },
{ property: "og:description", content: description },
{ property: "og:image", content: imageUrl },
{ name: "twitter:title", content: title },
{ name: "twitter:description", content: description },
{ name: "twitter:image", content: imageUrl },
];
return { props: { data, id, openGraphData } };
};
In this example, the getServerSideProps function fetches data based on the id from the query parameters. It then creates the openGraphData array with the fetched data and passes it as props to the ExamplePage component.
Please replace getDataFromSomewhere with your actual data fetching function.
This code is based on the extract from this source (https://github.com/vercel/next.js/issues/35172).
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
@rugged prism kapa.ai is still learning and improving, please let us know how it did by reacting below