add opengraph to token pages
This commit is contained in:
parent
d34806e04f
commit
30489396a4
|
@ -55,6 +55,21 @@ export async function generateMetadata(
|
|||
return {
|
||||
title: tokenPage.seoTitle,
|
||||
description: tokenPage.seoDescription,
|
||||
openGraph: {
|
||||
title: tokenPage?.seoTitle || tokenPage.tokenName,
|
||||
description: tokenPage?.seoDescription || tokenPage.symbol,
|
||||
url: `https://mango.markets/explore/tokens/${tokenPage.slug}`,
|
||||
siteName: 'Mango Markets',
|
||||
images: [
|
||||
{
|
||||
url: tokenPage.metaImageUrl, // Must be an absolute URL
|
||||
width: 1200,
|
||||
height: 600,
|
||||
},
|
||||
],
|
||||
locale: 'en_US',
|
||||
type: 'website',
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@ export interface TokenPage {
|
|||
coingeckoId: string
|
||||
seoTitle: string
|
||||
seoDescription: string
|
||||
metaImageUrl: string
|
||||
perpSymbol: string | undefined
|
||||
spotSymbol: string
|
||||
lastModified: string
|
||||
|
@ -58,6 +59,7 @@ export function parseContentfulTokenPage(
|
|||
seoTitle: tokenPageEntry.fields.seoTitle,
|
||||
seoDescription: tokenPageEntry.fields.seoDescription,
|
||||
perpSymbol: tokenPageEntry.fields.perpSymbol || undefined,
|
||||
metaImageUrl: tokenPageEntry.fields.metaImageUrl,
|
||||
spotSymbol: tokenPageEntry.fields.spotSymbol,
|
||||
lastModified: tokenPageEntry.sys.updatedAt,
|
||||
erc20TokenDecimals: tokenPageEntry.fields.erc20TokenDecimals || undefined,
|
||||
|
|
|
@ -11,7 +11,13 @@ export interface TypeHomePageAnnouncementFields {
|
|||
description?: EntryFieldTypes.Symbol
|
||||
linkPath: EntryFieldTypes.Symbol
|
||||
image?: EntryFieldTypes.AssetLink
|
||||
category: EntryFieldTypes.Symbol<'Announcement' | 'New Listing' | 'News'>
|
||||
category: EntryFieldTypes.Symbol<
|
||||
| 'Announcement'
|
||||
| 'From the Blog'
|
||||
| 'New Listing'
|
||||
| 'News'
|
||||
| 'So Hot Right Now'
|
||||
>
|
||||
}
|
||||
|
||||
export type TypeHomePageAnnouncementSkeleton = EntrySkeletonType<
|
||||
|
|
|
@ -10,7 +10,9 @@ export interface TypeLearnPostFields {
|
|||
postTitle: EntryFieldTypes.Symbol
|
||||
slug: EntryFieldTypes.Symbol
|
||||
author?: EntryFieldTypes.Symbol
|
||||
category: EntryFieldTypes.Symbol<'Repost' | 'Spot Trading'>
|
||||
category: EntryFieldTypes.Symbol<
|
||||
'Listing on Mango' | 'Repost' | 'Spot Trading'
|
||||
>
|
||||
authorProfileImage?: EntryFieldTypes.AssetLink
|
||||
postDescription: EntryFieldTypes.Text
|
||||
postContent: EntryFieldTypes.RichText
|
||||
|
|
|
@ -42,6 +42,7 @@ export interface TypeTokenFields {
|
|||
perpSymbol?: EntryFieldTypes.Symbol
|
||||
ethMint?: EntryFieldTypes.Symbol
|
||||
erc20TokenDecimals?: EntryFieldTypes.Integer
|
||||
metaImageUrl: EntryFieldTypes.Symbol
|
||||
}
|
||||
|
||||
export type TypeTokenSkeleton = EntrySkeletonType<TypeTokenFields, 'token'>
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 136 KiB |
Loading…
Reference in New Issue