πŸŽ‰ 75% of content is free forever β€” Unlock Premium from $10/mo β†’
CW
Search courses…
πŸ’Ό Servicesℹ️ Aboutβœ‰οΈ ContactView Pricing Plansfrom $10

Generating Metadata

Next.js SEO🟒 Free Lesson

Advertisement

Generating Metadata

Dynamic metadata, generateMetadata, Open Graph, and Twitter cards.

Overview

Dynamic metadata improves SEO and social sharing.

Key Concepts

  • generateMetadata β€” Dynamic metadata per page
  • Open Graph β€” Social media previews
  • Twitter Cards β€” Twitter-specific metadata
  • Canonical URLs β€” Prevent duplicate content
  • Alternate Languages β€” Multi-language SEO

Code Examples

// app/blog/[slug]/page.js
export async function generateMetadata({ params }) {
  const post = await getPost(params.slug);
  
  return {
    title: post.title,
    description: post.excerpt,
    openGraph: {
      title: post.title,
      description: post.excerpt,
      url: `https://example.com/blog/${post.slug}`,
      images: [{ url: post.coverImage, width: 1200, height: 630 }],
      type: 'article',
      publishedTime: post.publishedAt,
      authors: [post.author.name]
    },
    twitter: {
      card: 'summary_large_image',
      title: post.title,
      description: post.excerpt,
      images: [post.coverImage]
    },
    alternates: {
      canonical: `https://example.com/blog/${post.slug}`
    }
  };
}

// app/products/[id]/page.js
export async function generateMetadata({ params }) {
  const product = await getProduct(params.id);
  
  return {
    title: `${product.name} | My Store`,
    description: product.description,
    openGraph: {
      title: product.name,
      description: product.description,
      images: product.images
    }
  };
}

// Static metadata
export const metadata = {
  title: {
    template: '%s | My Store',
    default: 'My Store'
  },
  description: 'Best products at great prices'
};

Practice

Implement dynamic metadata for a blog with Open Graph and Twitter cards.

⭐

Premium Content

Generating Metadata

Unlock this lesson and 900+ advanced tutorials with a Premium plan.

🎯End-to-end Projects
πŸ’ΌInterview Prep
πŸ“œCertificates
🀝Community Access

Already a member? Log in

Need Expert Next.js Help?

Get personalized tutoring, project support, or professional consulting.

Advertisement