Sitemas di-design dengan SEO sebagai prioritas utama. Artikel ini menjelaskan semua fitur SEO yang sudah built-in dan cara mengoptimalkannya.
SEO Features Overview
| Fitur | Status | Keterangan |
|---|---|---|
| Meta Tags | ✅ Otomatis | Title, description, robots |
| Open Graph | ✅ Otomatis | Facebook, LinkedIn sharing |
| Twitter Cards | ✅ Otomatis | Twitter sharing |
| Canonical URLs | ✅ Otomatis | Prevent duplicate content |
| Sitemap | ✅ Otomatis | sitemap-index.xml |
| RSS Feed | ✅ Otomatis | /rss.xml |
| robots.txt | ✅ Included | Proper crawling rules |
| Schema.org | ✅ Otomatis | Article, Breadcrumb, Website |
Meta Tags Otomatis
Setiap halaman di Sitemas otomatis mendapat meta tags yang dioptimasi:
<!-- Basic Meta -->
<title>Judul Artikel | Sitemas</title>
<meta name="description" content="Deskripsi dari frontmatter...">
<meta name="robots" content="index, follow">
<!-- Canonical -->
<link rel="canonical" href="https://sitemas.com/blog/article-slug">
<!-- Open Graph -->
<meta property="og:type" content="article">
<meta property="og:title" content="Judul Artikel">
<meta property="og:description" content="Deskripsi artikel...">
<meta property="og:url" content="https://sitemas.com/blog/article-slug">
<meta property="og:image" content="https://sitemas.com/og/article-slug">
<!-- Twitter Card -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Judul Artikel">
<meta name="twitter:description" content="Deskripsi artikel...">
<meta name="twitter:image" content="https://sitemas.com/og/article-slug"> Sumber Data Meta
| Meta | Sumber |
|---|---|
title | Frontmatter title |
description | Frontmatter description |
og:image | Auto-generated atau heroImage |
canonical | URL halaman |
Open Graph Images
Sitemas otomatis generate Open Graph images untuk setiap artikel:
Auto-Generated OG Images
Setiap artikel mendapat OG image di /og/[slug]:
https://sitemas.com/og/pengenalan-sitemas-astro-blog
Image ini menampilkan:
- Judul artikel
- Kategori
- Tanggal publikasi
- Branding website
Custom Hero Image
Jika artikel memiliki heroImage di frontmatter:
---
title: "Judul Artikel"
heroImage: ./hero.png
---
Image ini akan digunakan untuk OG image.
OG images sebaiknya 1200x630 pixels untuk tampilan terbaik di semua platform.
Schema.org Structured Data
Sitemas mengimplementasi beberapa tipe Schema.org:
1. Article Schema
Setiap artikel blog mendapat Article schema:
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Judul Artikel",
"description": "Deskripsi artikel...",
"author": {
"@type": "Person",
"name": "Nama Author"
},
"datePublished": "2024-01-20T00:00:00Z",
"dateModified": "2024-01-21T00:00:00Z",
"publisher": {
"@type": "Organization",
"name": "Sitemas",
"logo": {
"@type": "ImageObject",
"url": "https://sitemas.com/logo.png"
}
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://sitemas.com/blog/article-slug"
},
"image": "https://sitemas.com/og/article-slug"
} 2. BreadcrumbList Schema
Navigasi breadcrumb di-markup dengan schema:
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "Home",
"item": "https://sitemas.com"
},
{
"@type": "ListItem",
"position": 2,
"name": "Blog",
"item": "https://sitemas.com/blog"
},
{
"@type": "ListItem",
"position": 3,
"name": "Judul Artikel",
"item": "https://sitemas.com/blog/article-slug"
}
]
} 3. WebSite Schema
Homepage mendapat WebSite schema dengan SearchAction:
{
"@context": "https://schema.org",
"@type": "WebSite",
"name": "Sitemas",
"url": "https://sitemas.com",
"potentialAction": {
"@type": "SearchAction",
"target": "https://sitemas.com/search?q={search_term_string}",
"query-input": "required name=search_term_string"
}
} Sitemap Otomatis
Sitemas menggunakan @astrojs/sitemap untuk generate sitemap:
Konfigurasi
import sitemap from '@astrojs/sitemap';
export default defineConfig({
site: 'https://sitemas.com',
integrations: [
sitemap({
filter: (page) => !page.includes('/og/'),
}),
],
}); URLs Generated
/sitemap-index.xml— Index sitemap/sitemap-0.xml— Semua halaman
Exclude Pages
Halaman OG images di-exclude dari sitemap karena bukan untuk user visit:
filter: (page) => !page.includes('/og/')
robots.txt
File public/robots.txt mengontrol crawler behavior:
User-agent: *
Allow: /
# Disallow OG image routes (not for direct access)
Disallow: /og/
# Sitemap location
Sitemap: https://sitemas.com/sitemap-index.xml RSS Feed
RSS feed tersedia di /rss.xml:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>Sitemas</title>
<description>Blog description...</description>
<link>https://sitemas.com</link>
<item>
<title>Judul Artikel</title>
<link>https://sitemas.com/blog/article-slug</link>
<pubDate>Sat, 20 Jan 2024 00:00:00 GMT</pubDate>
<description>Deskripsi artikel...</description>
</item>
<!-- more items -->
</channel>
</rss> SEO Best Practices di Konten
1. Title Optimization
# ✅ Bagus - descriptive, includes keywords
title: "Cara Install Node.js di Windows, macOS, dan Linux"
# ❌ Kurang baik - terlalu pendek
title: "Install Node.js"
Tips:
- 50-60 karakter optimal
- Masukkan keyword utama di awal
- Buat compelling untuk click
2. Description Optimization
# ✅ Bagus - actionable, includes benefit
description: "Panduan step-by-step install Node.js di semua OS. Termasuk troubleshooting common errors dan tips setup environment."
# ❌ Kurang baik - terlalu generic
description: "Tutorial Node.js untuk pemula."
Tips:
- 150-160 karakter optimal
- Masukkan CTA (Pelajari, Temukan, dll.)
- Unique untuk setiap halaman
3. Heading Structure
# H1 - Hanya satu, otomatis dari title
## H2 - Section utama (3-7 per artikel)
### H3 - Subsection
#### H4 - Detail lebih lanjut
4. Image Alt Text
// ✅ Bagus - descriptive

// ❌ Kurang baik

5. Internal Linking
Link ke artikel terkait untuk meningkatkan crawlability:
Pelajari lebih lanjut tentang [instalasi Sitemas](/blog/panduan-instalasi-sitemas)
dan [konfigurasi dasar](/blog/konfigurasi-branding-sitemas).
Verifikasi SEO
Google Search Console
- Buka search.google.com/search-console
- Add property dengan domain Anda
- Verifikasi ownership (DNS atau HTML tag)
- Submit sitemap:
https://yourdomain.com/sitemap-index.xml
Rich Results Test
Test structured data:
- Buka Rich Results Test
- Masukkan URL artikel
- Verifikasi Article dan Breadcrumb terdeteksi
PageSpeed Insights
Test performa (mempengaruhi SEO):
- Buka PageSpeed Insights
- Masukkan URL
- Target: 90+ di semua metrik
Customizing SEO
Override Meta per Halaman
Di layout, meta bisa di-override:
<BaseLayout
title="Custom Title"
description="Custom description"
noindex={true} // Untuk halaman yang tidak perlu di-index
/> Menambahkan Schema Kustom
Untuk schema tambahan, edit komponen Schema:
<script type="application/ld+json" set:html={JSON.stringify({
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "What is Sitemas?",
"acceptedAnswer": {
"@type": "Answer",
"text": "Sitemas is..."
}
}
]
})} /> Langkah Selanjutnya
Optimasi performa untuk Core Web Vitals:
Optimasi Performa
Pelajari cara mengoptimasi Sitemas untuk Core Web Vitals yang sempurna.
Kesimpulan
Sitemas menyediakan fondasi SEO yang solid out-of-the-box:
- Meta tags otomatis dari frontmatter
- Open Graph untuk social sharing
- Schema.org untuk rich snippets
- Sitemap dan RSS untuk discoverability
Tugas Anda adalah fokus pada konten berkualitas — Sitemas handle technical SEO untuk Anda.