Struktur Proyek
Peta berkas tema GitDocs dan tanggung jawab tiap bagian.
Di halaman ini
Tema disusun agar lapisan data (tipe konten, REST, renderer) terpisah rapi dari lapisan tampilan, sehingga mudah dirawat maupun dipindahkan ke plugin bila kelak diperlukan.
aithordev-wiki/
βββ style.css Header tema
βββ functions.php Bootstrap: konstanta, autoloader, boot
βββ inc/
β βββ class-theme.php Orkestrator (memuat semua modul)
β βββ class-post-types.php CPT doc_page, taksonomi doc_space, meta
β βββ class-router.php Aturan URL /docs/{space}/{path}/
β βββ class-tree.php Pohon navigasi + cache
β βββ class-content.php Pipeline render & ekstraksi TOC
β βββ class-pages.php Layanan simpan/terbitkan/pindah/hapus
β βββ class-search-index.php Pembuat indeks JSON
β βββ class-rest-api.php Endpoint gitdocs/v1
β βββ class-assets.php Enqueue CSS/JS + konfigurasi front-end
β βββ class-cleanup.php Mematikan fitur blog WordPress
β βββ class-admin.php Menu, kolom, alat, dasbor
β βββ class-editor-app.php Bootstrap editor React
β βββ class-preview.php Mode pratinjau langsung
β βββ class-seeder.php Konten contoh
β βββ markdown/ Parser Markdown + komponen
β βββ vendor/parsedown/ Parsedown (MIT)
βββ template-parts/ Bagian tampilan (sidebar, TOC, kartu, β¦)
βββ assets/
β βββ css/ tokens Β· app Β· content Β· editor Β· admin Β· login
β βββ js/ app Β· search Β· preview Β· editor/*
β βββ fonts/ Google Sans Flex & Code (OFL)
β βββ icons/ subset Lucide (ISC)
β βββ vendor/ Prism, Fuse.js, htm
βββ seed/ Konten contoh (berkas .md ini)
βββ languages/ gitdocs.pot
| Data | Lokasi |
|---|---|
| Sumber Markdown | Meta gitdocs_markdown (berevisi) |
| HTML tampil | post_content |
| Daftar isi | Meta _gitdocs_toc |
| Potongan pencarian | Meta _gitdocs_search |
| Perubahan belum terbit | Meta _gitdocs_draft |
| Ikon, sampul, opsi halaman | Meta gitdocs_* |
| Space | Taksonomi doc_space |
| Indeks pencarian | uploads/gitdocs/search-index.json |
Karena post_content berisi HTML biasa, konten Anda tetap terbaca bila suatu saat berpindah tema β tidak ada lock-in pada format khusus.