feat: implement dynamic SEO metadata for static pages
This commit is contained in:
parent
089662d1f3
commit
1e63d3e5ff
3 changed files with 21 additions and 0 deletions
|
|
@ -1,3 +1,4 @@
|
|||
import { useEffect } from 'react'
|
||||
import { motion } from 'motion/react'
|
||||
|
||||
function Section({ title, children }: { title: string; children: React.ReactNode }) {
|
||||
|
|
@ -10,6 +11,12 @@ function Section({ title, children }: { title: string; children: React.ReactNode
|
|||
}
|
||||
|
||||
export default function AboutPage() {
|
||||
useEffect(() => {
|
||||
document.title = "About MSDL | Windows ISO Downloader"
|
||||
const metaDesc = document.querySelector('meta[name="description"]')
|
||||
if (metaDesc) metaDesc.setAttribute('content', "Learn about MSDL, an open-source tool for fetching official Windows ISOs directly from Microsoft.")
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<div className="max-w-2xl mx-auto px-4 pt-12 pb-10">
|
||||
<motion.div
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import { useEffect } from 'react'
|
||||
import { motion } from 'motion/react'
|
||||
|
||||
function Section({ title, children }: { title: string; children: React.ReactNode }) {
|
||||
|
|
@ -10,6 +11,12 @@ function Section({ title, children }: { title: string; children: React.ReactNode
|
|||
}
|
||||
|
||||
export default function DisclaimerPage() {
|
||||
useEffect(() => {
|
||||
document.title = "Disclaimer | Windows ISO Downloader"
|
||||
const metaDesc = document.querySelector('meta[name="description"]')
|
||||
if (metaDesc) metaDesc.setAttribute('content', "Legal disclaimer for MSDL. Not affiliated with Microsoft Corporation.")
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<div className="max-w-2xl mx-auto px-4 pt-12 pb-10">
|
||||
<motion.div
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import { useEffect } from 'react'
|
||||
import { motion } from 'motion/react'
|
||||
|
||||
function Section({ title, children }: { title: string; children: React.ReactNode }) {
|
||||
|
|
@ -10,6 +11,12 @@ function Section({ title, children }: { title: string; children: React.ReactNode
|
|||
}
|
||||
|
||||
export default function PrivacyPolicyPage() {
|
||||
useEffect(() => {
|
||||
document.title = "Privacy Policy | Windows ISO Downloader"
|
||||
const metaDesc = document.querySelector('meta[name="description"]')
|
||||
if (metaDesc) metaDesc.setAttribute('content', "Privacy policy for MSDL. We log no data, use no trackers, and proxy no files.")
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<div className="max-w-2xl mx-auto px-4 pt-12 pb-10">
|
||||
<motion.div
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue