Phase 1: technical SEO foundations

- Per-page titles, descriptions, canonicals, Open Graph/Twitter tags
  via a shared pageMetadata() helper; metadataBase on the root layout
- Sitemap generated from a route list on the canonical non-www host;
  robots.txt points to it; /services removed
- One H1 per page; decorative images get empty alt text
- JSON-LD: site-wide ComputerRepairService, FAQPage on the homepage,
  Service on each service page
- FAQ answers are now server-rendered (forceMount) so the schema matches
  the HTML; fixed the nested payment FAQ item
- Drop web design (page, nav link, homepage card and FAQs); 301 the old URL
- Remove GA, Facebook Pixel and Vercel Analytics/Speed Insights
- Fix tel: links (+640211... -> +64211...)
- Add og-image.png and logo.png

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
asownerytandClaude Opus 5.5 committed 2026-09-30 20:24:29 +13:00
1 parent 0478ab65e5
commit c085e2b031
23 files changed
+375 -386

No files matched your search

+2 -12
View File
@@ -49,7 +49,7 @@ export default function Navbar() {
<div className={styles.header}>
<div>
<Link href="/" className={styles.logo}>
<Image src={logo} width="32" height="32" alt="Logo" />
<Image src={logo} width="32" height="32" alt="" />
<p>Te Atatu Computers</p>
</Link>
</div>
@@ -62,7 +62,7 @@ export default function Navbar() {
src={isActive ? menu : close}
width="32"
height="32"
alt="Menu"
alt=""
/>
</button>
</div>
@@ -131,16 +131,6 @@ export default function Navbar() {
IT Support
</Link>
</li>
<li>
<Link
href="/services/web-design"
className={`link ${
pathname === "/services/web-design" ? styles.active : ""
}`}
>
Web Design
</Link>
</li>
<li>
<Link
href="/services/virus-removal"