Skip to content

Commit 2eb974c

Browse files
Technical SEO: Fix missing hreflang, orphan pages, and meta description issues
1 parent 1998fb9 commit 2eb974c

16 files changed

Lines changed: 176 additions & 10 deletions

File tree

app/about/page.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@ import { Users, Zap, Shield, Heart, Code2, Globe2, Coffee, Sparkles } from 'luci
55
export const metadata = {
66
title: 'About Us - WebToolkit Pro',
77
description: 'Learn about WebToolkit Pro, the free online developer tools platform built for web professionals. Discover our mission, privacy values, and the team behind the tools.',
8+
alternates: {
9+
canonical: 'https://wtkpro.site/about/',
10+
languages: {
11+
'en-US': 'https://wtkpro.site/about/',
12+
'x-default': 'https://wtkpro.site/about/',
13+
},
14+
},
815
}
916

1017
export default function AboutPage() {

app/contact/page.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@ import { Mail, MessageSquare, Send } from 'lucide-react'
44
export const metadata = {
55
title: 'Contact Us - WebToolkit Pro',
66
description: 'Get in touch with the WebToolkit Pro team. We love hearing from developers!',
7+
alternates: {
8+
canonical: 'https://wtkpro.site/contact/',
9+
languages: {
10+
'en-US': 'https://wtkpro.site/contact/',
11+
'x-default': 'https://wtkpro.site/contact/',
12+
},
13+
},
714
}
815

916
export default function ContactPage() {

app/layout.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,13 @@ const inter = Inter({ subsets: ['latin'] })
1111

1212
export const metadata: Metadata = {
1313
metadataBase: new URL('https://wtkpro.site'),
14+
alternates: {
15+
canonical: '/',
16+
languages: {
17+
'en-US': '/',
18+
'x-default': '/',
19+
},
20+
},
1421
title: 'WebToolkit Pro | 65+ Premium Developer Tools & Expert Guides',
1522
description: 'WebToolkit Pro offers 65+ free premium developer tools and expert guides. Secure, fast, and optimized for enterprise engineering. Format JSON and master SEO.',
1623
keywords: 'developer tools, json formatter, password generator, webtoolkit pro, seo tools, technical guides, base64 encoder',

app/privacy/page.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,14 @@ import React from 'react'
22

33
export const metadata = {
44
title: 'Privacy Policy - WebToolkit Pro',
5-
description: 'WebToolkit Pro privacy policy. Learn how we handle your data, our use of cookies, and our commitment to GDPR, CCPA, and Google Consent Mode v2.'
5+
description: 'WebToolkit Pro privacy policy. Learn how we handle your data, our use of cookies, and our commitment to GDPR, CCPA, and Google Consent Mode v2.',
6+
alternates: {
7+
canonical: 'https://wtkpro.site/privacy/',
8+
languages: {
9+
'en-US': 'https://wtkpro.site/privacy/',
10+
'x-default': 'https://wtkpro.site/privacy/',
11+
},
12+
},
613
}
714

815
export default function PrivacyPage() {

app/tools/api-latency-calculator/page.tsx

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -144,11 +144,19 @@ export default function ApiLatencyCalculator() {
144144
</div>
145145

146146
<div className="bg-amber-50 dark:bg-amber-900/10 p-6 rounded-3xl border border-amber-100 dark:border-amber-900/30">
147-
<div className="flex gap-3">
148-
<AlertCircle className="w-5 h-5 text-amber-600 shrink-0 mt-0.5" />
149-
<p className="text-xs text-amber-800 dark:text-amber-400 leading-relaxed">
150-
<strong>Technical Fact:</strong> Amazon research indicates that every 100ms of latency costs 1% in sales. Google found a 0.5s delay caused a 20% drop in traffic.
151-
</p>
147+
<div className="flex flex-col gap-4">
148+
<div className="flex gap-3">
149+
<AlertCircle className="w-5 h-5 text-amber-600 shrink-0 mt-0.5" />
150+
<p className="text-xs text-amber-800 dark:text-amber-400 leading-relaxed">
151+
<strong>Technical Fact:</strong> Amazon research indicates that every 100ms of latency costs 1% in sales.
152+
</p>
153+
</div>
154+
<Link
155+
href="/blog/api-latency-study/"
156+
className="inline-flex items-center gap-2 text-xs font-bold text-amber-700 dark:text-amber-400 hover:gap-3 transition-all"
157+
>
158+
Read our full 2026 Latency Study <ArrowRight className="w-3 h-3" />
159+
</Link>
152160
</div>
153161
</div>
154162
</div>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { Metadata } from 'next'
2+
3+
export const metadata: Metadata = {
4+
title: 'Secure Base64 Encoder & Decoder | WebToolkit Pro',
5+
description: 'Instant Base64 encoding and decoding for data strings and files. Secure, client-side processing for developers and privacy-conscious users.',
6+
alternates: {
7+
canonical: 'https://wtkpro.site/tools/base64-encoder/',
8+
languages: {
9+
'en-US': 'https://wtkpro.site/tools/base64-encoder/',
10+
'x-default': 'https://wtkpro.site/tools/base64-encoder/',
11+
},
12+
},
13+
}
14+
15+
export default function Base64EncoderLayout({
16+
children,
17+
}: {
18+
children: React.ReactNode
19+
}) {
20+
return <>{children}</>
21+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { Metadata } from 'next'
2+
3+
export const metadata: Metadata = {
4+
title: 'Professional JSON Formatter & Validator | WebToolkit Pro',
5+
description: 'Clean, format, and validate JSON data instantly. Enterprise-grade JSON beautifier with AST-aware syntax highlighting and error detection. Secure and fast.',
6+
alternates: {
7+
canonical: 'https://wtkpro.site/tools/json-formatter/',
8+
languages: {
9+
'en-US': 'https://wtkpro.site/tools/json-formatter/',
10+
'x-default': 'https://wtkpro.site/tools/json-formatter/',
11+
},
12+
},
13+
}
14+
15+
export default function JsonFormatterLayout({
16+
children,
17+
}: {
18+
children: React.ReactNode
19+
}) {
20+
return <>{children}</>
21+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { Metadata } from 'next'
2+
3+
export const metadata: Metadata = {
4+
title: 'SEO Meta Tag Generator | Open Graph & Twitter Cards | WebToolkit Pro',
5+
description: 'Create Google-ready meta tags, Open Graph tags, and Twitter Cards to improve your search visibility and social media appearance. Optimize for higher CTR.',
6+
alternates: {
7+
canonical: 'https://wtkpro.site/tools/meta-tag-generator/',
8+
languages: {
9+
'en-US': 'https://wtkpro.site/tools/meta-tag-generator/',
10+
'x-default': 'https://wtkpro.site/tools/meta-tag-generator/',
11+
},
12+
},
13+
}
14+
15+
export default function MetaTagGeneratorLayout({
16+
children,
17+
}: {
18+
children: React.ReactNode
19+
}) {
20+
return <>{children}</>
21+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { Metadata } from 'next'
2+
3+
export const metadata: Metadata = {
4+
title: 'Secure Password Generator | US-Standard Encryption | WebToolkit Pro',
5+
description: 'Generate cryptographically secure passwords using NIST-standard entropy. Customize length, symbols, and numbers for maximum security. 100% browser-based.',
6+
alternates: {
7+
canonical: 'https://wtkpro.site/tools/password-generator/',
8+
languages: {
9+
'en-US': 'https://wtkpro.site/tools/password-generator/',
10+
'x-default': 'https://wtkpro.site/tools/password-generator/',
11+
},
12+
},
13+
}
14+
15+
export default function PasswordGeneratorLayout({
16+
children,
17+
}: {
18+
children: React.ReactNode
19+
}) {
20+
return <>{children}</>
21+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { Metadata } from 'next'
2+
3+
export const metadata: Metadata = {
4+
title: 'Robots.txt Generator | Crawl Budget Optimization | WebToolkit Pro',
5+
description: 'Control search engine crawler access and optimize your website\'s crawl budget with a perfectly formatted robots.txt file. Secure your site index.',
6+
alternates: {
7+
canonical: 'https://wtkpro.site/tools/robots-generator/',
8+
languages: {
9+
'en-US': 'https://wtkpro.site/tools/robots-generator/',
10+
'x-default': 'https://wtkpro.site/tools/robots-generator/',
11+
},
12+
},
13+
}
14+
15+
export default function RobotsGeneratorLayout({
16+
children,
17+
}: {
18+
children: React.ReactNode
19+
}) {
20+
return <>{children}</>
21+
}

0 commit comments

Comments
 (0)