seo: improve SEO and fix social media link preview image

- Fix og:image and twitter:image to use absolute URLs (was the root cause of missing social preview image)
- Add og:image:width, og:image:height, og:image:alt, og:image:type
- Add og:site_name, og:locale, twitter:site, twitter:image:alt
- Add canonical link tag and robots meta
- Add JSON-LD structured data for Organization, SoftwareApplication, WebSite
- Add public/robots.txt pointing to sitemap
- Add public/sitemap.xml for search engine crawling
- Add public/site.webmanifest for PWA/mobile home screen support
- Add theme-color meta and apple-touch-icon link
- Update lang attribute to en-PH
This commit is contained in:
kevin-asprec
2026-03-17 18:40:50 +08:00
parent 847a0d463a
commit dd7f6bb745
4 changed files with 114 additions and 8 deletions

View File

@@ -1,28 +1,104 @@
<!doctype html>
<html lang="en">
<html lang="en-PH">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- Favicon & Touch Icons -->
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
<link rel="manifest" href="/site.webmanifest" />
<meta name="theme-color" content="#2563eb" />
<!-- Primary SEO -->
<title>TapTrack — Attendance That Runs Itself</title>
<meta name="description" content="TapTrack is an on-premises NFC student attendance system built for Philippine schools. Students tap their ID card, parents get an SMS, records update instantly. No cloud. No subscription." />
<meta name="keywords" content="NFC attendance, student attendance Philippines, RFID attendance system, DepEd attendance, school attendance automation, SMS parent notification" />
<meta name="keywords" content="NFC attendance, student attendance Philippines, RFID attendance system, DepEd attendance, school attendance automation, SMS parent notification, on-premises attendance, school ID tap system" />
<meta name="author" content="TapTrack" />
<meta name="robots" content="index, follow" />
<link rel="canonical" href="https://taptrack.ph/" />
<!-- Open Graph / Facebook -->
<!-- Open Graph / Facebook / LinkedIn -->
<meta property="og:type" content="website" />
<meta property="og:url" content="https://taptrack.ph/" />
<meta property="og:site_name" content="TapTrack" />
<meta property="og:locale" content="en_PH" />
<meta property="og:title" content="TapTrack — Attendance That Runs Itself" />
<meta property="og:description" content="On-premises NFC attendance for Philippine schools. Students tap, parents get SMS, records update automatically." />
<meta property="og:image" content="/screenshots/58IBI.png" />
<meta property="og:description" content="On-premises NFC attendance for Philippine schools. Students tap their ID, parents get an SMS, and records update automatically — no cloud, no subscription." />
<meta property="og:image" content="https://taptrack.ph/screenshots/58IBI.png" />
<meta property="og:image:width" content="1280" />
<meta property="og:image:height" content="800" />
<meta property="og:image:alt" content="TapTrack live attendance dashboard showing real-time student check-ins" />
<meta property="og:image:type" content="image/png" />
<!-- Twitter Card -->
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:site" content="@taptrackph" />
<meta name="twitter:title" content="TapTrack — Attendance That Runs Itself" />
<meta name="twitter:description" content="On-premises NFC attendance for Philippine schools. Students tap, parents get SMS, records update automatically." />
<meta name="twitter:image" content="/screenshots/58IBI.png" />
<meta name="twitter:description" content="On-premises NFC attendance for Philippine schools. Students tap their ID, parents get an SMS, and records update automatically — no cloud, no subscription." />
<meta name="twitter:image" content="https://taptrack.ph/screenshots/58IBI.png" />
<meta name="twitter:image:alt" content="TapTrack live attendance dashboard showing real-time student check-ins" />
<!-- JSON-LD Structured Data -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://taptrack.ph/#organization",
"name": "TapTrack",
"url": "https://taptrack.ph/",
"logo": {
"@type": "ImageObject",
"url": "https://taptrack.ph/favicon.svg"
},
"description": "TapTrack builds on-premises NFC student attendance systems for Philippine schools.",
"areaServed": {
"@type": "Country",
"name": "Philippines"
}
},
{
"@type": "SoftwareApplication",
"@id": "https://taptrack.ph/#software",
"name": "TapTrack",
"url": "https://taptrack.ph/",
"applicationCategory": "EducationApplication",
"operatingSystem": "Windows, Linux",
"description": "On-premises NFC student attendance system for Philippine schools. Students tap their ID card, parents receive an SMS, and records update instantly — no cloud, no subscription required.",
"featureList": [
"NFC/RFID student ID tap-in",
"Instant SMS parent notifications",
"Real-time attendance dashboard",
"Offline-first on-premises operation",
"Student directory management",
"Attendance reports and export"
],
"screenshot": "https://taptrack.ph/screenshots/58IBI.png",
"offers": {
"@type": "Offer",
"price": "0",
"priceCurrency": "PHP",
"description": "Contact for pricing"
},
"publisher": {
"@id": "https://taptrack.ph/#organization"
}
},
{
"@type": "WebSite",
"@id": "https://taptrack.ph/#website",
"url": "https://taptrack.ph/",
"name": "TapTrack",
"description": "On-premises NFC attendance for Philippine schools.",
"publisher": {
"@id": "https://taptrack.ph/#organization"
}
}
]
}
</script>
<!-- Inter Font -->
<link rel="preconnect" href="https://fonts.googleapis.com" />

4
public/robots.txt Normal file
View File

@@ -0,0 +1,4 @@
User-agent: *
Allow: /
Sitemap: https://taptrack.ph/sitemap.xml

17
public/site.webmanifest Normal file
View File

@@ -0,0 +1,17 @@
{
"name": "TapTrack",
"short_name": "TapTrack",
"description": "On-premises NFC student attendance for Philippine schools.",
"start_url": "/",
"display": "standalone",
"background_color": "#ffffff",
"theme_color": "#2563eb",
"icons": [
{
"src": "/favicon.svg",
"sizes": "any",
"type": "image/svg+xml",
"purpose": "any maskable"
}
]
}

9
public/sitemap.xml Normal file
View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://taptrack.ph/</loc>
<lastmod>2026-03-17</lastmod>
<changefreq>monthly</changefreq>
<priority>1.0</priority>
</url>
</urlset>