Cara membuat robots.txt dan ads.txt di Hugo itu gampang! Udah setup Hugo, pilih tema, dan mulai nulis artikel? Good! Tapi ada satu hal yang sering dilupain: robots.txt dan ads.txt. Tanpa keduanya, blogmu bakal susah bersaing di search engine dan ribet pas mau masang iklan.
Di artikel ini, kita bakal bahas tutorial hugo dengan langkah-langkah yang mudah diikuti buat kamu yang baru mulai ngeblog pakai Hugo.
Bukan cuma bikin file di static, kita bakal pakai metode template biar lebih gampang dimaintain.
Kenapa Robots.txt dan Ads.txt Itu Penting?
Sebenernya aku lebih proper ke Robots.txt, karena wajib buat kalian bikin dan terapin di blog. Sebelum kita bikin, kita bahas dikit kenapa si Robots.txt ini penting.
Robots.txt berfungsi buat ngasih tau bot Google, Bing, dan berbagai macam search engine, halaman mana aja yang boleh di-crawl sama halaman yang kamu larang buat di-crawl.
Kenapa Penting?
- Hemat crawl budget: kamu bisa blokir halaman yang ga penting (misal halaman tag, arsip) biar Google fokus crawl konten utama
- Lindungi halaman privat: Halaman admin atau draft bisa juga disembunyiin dari search engine
- Kontrol indexing: Meskipun bukan jaminan 100%, robots.txt bisa ngebantu buat ngatur halaman mana yang muncul di hasil pencarian
Ads.txt atau Authorized Digital Sellers adalah file yang berfungsi untuk ngelakuin verifikasi publisher yang sah. File ini wajib hukumnya dipasang di website ataupun blog, kalo mau pasang iklan dari platform kayak Google AdSense , Ezoic, atau Mediavine.
Kenapa penting?
- Cegah ads fraud: Ads.txt bikin si pengiklan tau kalo iklan mereka dipasang di publisher yang resmi, bukan website spam atau palsu.
- Syarat monetisasi: Platform iklan kek AdSense butuh ads.txt sebelum akunmu di-approve.
- Maksimalin revenue: Tanpa ads.txt, beberapa pengiklan bakal skip blog-mu, artinya kamu bisa kehilangan potensi income dari adsense.
Singkatnya: robots.txt buat SEO, ads.txt buat monetisasi. Keduanya wajib ada!
Cara Pasang Robots.txt dan Ads.txt dengan Static
Walopun cara ini udah kuno, kalian wajib tau juga cara pasang nya lewat folder static
Caranya ga susah dan cuma perlu bikin 2 file di folder static dengan nama Robots.txt dan Ads.txt
Untuk isi file-nya bisa liat contoh yang kubuat dibawah:
User-agent: *
Allow: /
Disallow: /404.html
Disallow: /search/
Disallow: /tags
sitemap: https://deuxly.id/sitemap.xmlKelemahannya, kalau kamu ganti domain (misal dari .id ke .com), kamu harus ngedit URL sitemap ini secara manual.
google.com, pub-2065xxxx, DIRECT, f08xxxxx Cara Membuat Robots.txt dan Ads.txt dengan Hugo Template Layouts
Nah, ini cara yang lebih elegan. Hugo punya fitur Custom Output Formats yang ngebuat kita bisa merender file apa aja, termasuk teks biasa memakai variabel dan logika template.
Dengan metode ini, isi file robots.txt dan ads.txt kamu bakal otomatis berubah ngikut sama baseURL yang ada di konfigurasi hugo.yaml. Jadi, kalau kamu ganti domain dari .com ke .id, file ini bakal otomatis nyesuaiin diri tanpa perlu di-setting lagi.
Membuat File Robots
Untuk membuat robots.txt yang dinamis, kamu ngga perlu bikin file di folder static. Gantinya, buat file baru dengan nama robots.txt di dalam folder /layouts/.
Isikan kode di bawah ini ke dalamnya:
User-agent: *
Disallow:
Sitemap: {{ .Site.BaseURL }}sitemap.xmlMembuat File Ads
Untuk ads.txt, kita butuh sedikit trik tambahan karena Hugo ngga punya built-in template untuk ini secara default kek robots.txt. Kamu bisa buat file baru di /layouts/index.ads.txt.
Biar lebih rapi dan aman, bagusnya jangan tulis ID Publisher AdSense langsung di file ini. Simpan ID-nya di file konfigurasi hugo.yaml atau hugo.toml.
Contoh pengaturan di hugo.yaml:
params:
adsenseId: "pub-0000000000000000"Terus di file /layouts/index.ads.txt, panggil variabelnya kek gini:
google.com, {{ .Site.Params.adsenseId }}, DIRECT, f08c47fec0942fa0Dengan settingan gini, kalau punya banyak blog dan pake akun AdSense yang sama, kamu tinggal copas aja layout-nya dan tinggal ganti config-nya aja.
Mengaktifkan di Konfigurasi Hugo
Langkah ini yang paling sering bikin pusing karena file-nya kadang ngga muncul pas di-build. Kamu harus ngasih tau Hugo buat ngerender format file itu.
Buka file konfigurasi utama kamu hugo.yaml atau hugo.toml, terus cari atau tambahin blok outputs. Kamu perlu jelasin kalo ini format baru untuk Adsense dan mengaktifkan Robots.
Contoh konfigurasi di hugo.yaml:
mediaTypes:
text/ads:
suffixes:
- txt
outputFormats:
ADS:
mediaType: "text/ads"
baseName: "ads"
isPlainText: true
outputs:
home:
- HTML
- RSS
- ROBOTS # Bawaan Hugo
- ADS # Custom yang kita buat tadiTesting Hasil Build
Kalo semua kode udah kepasang, jangan langsung percaya gitu aja. Jalanin perintah hugo server di terminal.
Buka browsermu dan akses:
http://localhost:1313/robots.txthttp://localhost:1313/ads.txt
Intinya, ngapain repot ngedit file manual kalau bisa dibikin otomatis? Dengan trik ini, satu beban pikiran pas deploy website jadi hilang. Kamu ngga perlu lagi mikirin kalo lupa ganti URL sitemap atau ID publisher tiap kali ada perubahan config. Setup sekali di awal, sisanya biar Hugo yang kerja keras wkkw. Gas langsung dipraktekin!



