Tutorial Dasar Ghost CMS

tutorial dasar ghost.jpg
August 22, 2023
Share

Ghost adalah CMS yang dibangun diatas teknologi web modern Node.js, tidak seperti WordPress yang menggunakan PHP, Ghost menggunakan pustaka Javascript seperti Handlebars.js, dan Ember.js. Selain itu, untuk instalasi, Ghost menggunakan npm sebagai paket manajer.

Arsitektur Ghost

Ghost memuat banyak pustaka dan komponen open source, namun setidaknya ada empat komponen penting yang menjadikan Ghost sangat solid dan dapat di kustomisasi sesuai keinginan.

  1. API JSON inti yang kuat
  2. Aplikasi klien admin yang intuitif
  3. Lapisan tema front-end yang sederhana dan kuat
  4. Modul yang dapat disesuaikan dengan kebutuhan

Keempat komponen tersebut saling berhubungan satu sama lain, seperti gambar dibawah ini:

Komponen Ghost. Image credit: Ghost.org

Secara fisik, Ghost terdiri dari dua direktori yaitu:

  • core – Berisi file inti dari Ghost –yang membuat CMS ini berjalan–
  • content – Berisi file yang dapat ditambahkan atau diubah oleh pengguna seperti tema dan gambar.

Ghost Core

Inti dari Ghost sebenarnya adalah API (Application Programming Interface); tepatnya RESTful JSON API – yang didesain untuk membuat, mengelola dan mempublikasikan konten dengan mudah.

Ada beberapa bagian dari Ghost Core yaitu:

  • Admin API – Digunakan untuk mengelola konten, oleh staf yang memiliki akses baca dan tulis di halaman Admin.
  • Content API – Mendistribusikan konten yang dibuat di halaman Admin ke halaman depan dan dapat diakses oleh pembaca/pengunjung.
  • JavaScript SDK – Memudahkan pengembang untuk memperluas jangkauan Ghost, misal menjadikan Ghost sebagai headless CMS (Ghost sebagai backend, Gatsby/Next.js sebagai frontend).
  • Webhooks – Digunakan untuk mengirimkan notifikasi ke layanan eksternal, misalnya ke Zapier atau Pipedream.
  • Versioning – Pengelompokan pembaruan versi yang dirilis Ghost. untuk pembaruan major misalnya, pembaruan dirilis sekitar 8-12 bulan. Hal ini memudahkan pengembang untuk tidak buru-buru memperbarui rilis proyek mereka; misalnya pembaruan tema.
  • Data & Storage – Ghost menyertakan layer Bookshelf.js ORM secara default, memungkinkan berbagai database untuk digunakan.
Recommended:  Cara Instalasi Sistem Komentar Utterances Di Ghost

Struktur File

Berikut ini adalah struktur file dari Ghost yang digunakan oleh server produksi, untuk server pengembangan, beberapa file dan direktori akan berbeda.

File struktur Ghost

Fleksibilitas

Ghost sangat fleksible, dapat dijadikan Headless CMS maupun Traditional CMS. Ini karena Ghost dibangun diatas fondasi Node.js yang kuat, sehingga Framework Jamstack seperti Gatsby atau Next.js mudah dikembangkan di platform ini.

Ghost juga kompatible dengan berbagai platform database. Saat ini setidaknya ada dua database yang didukung secara resmi oleh Ghost, SQLite3 untuk pengembangan dan MySQL untuk produksi.

Selain itu, meskipun Ghost menggunakan penyimpanan file lokal secara default, Anda juga dapat menggunakan adapter penyimpanan khusus untuk membuat sistem file Anda sepenuhnya eksternal. Ada cukup banyak adapter penyimpanan siap pakai untuk Ghost yang sudah tersedia untuk digunakan, misalnya adapter untuk Cloudinary dan AWS S3.

Instalasi

Untuk melakukan instalasi Ghost, ada beberapa metode yang dapat digunakan, yaitu melalui panel dan non-panel. Untuk mengetahui tutorial lengkap instalasi Ghost, silakan pelajari artikel ini.

Cara Instalasi Ghost Di CloudPanel
Setelah berhasil migrasi dari WordPress ke Ghost (walaupun cukup melelahkan karena harus melakukan banyak pembenahan dimana-mana), akhirnya semua konten saya sudah berada di CMS Ghost.

Ghost-CLI

Ghost-CLI merupakan aplikasi yang berjalan di terminal dan digunakan untuk tugas-tugas yang berhubungan dengan masalah teknis, misalnya menyalakan dan menghentikan server Ghost.

💡
Untuk mengakses Ghost-CLI, Anda harus masuk ke terminal server VPS Anda, gunakan SSH untuk melakukannya; pastikan Anda memiliki pengetahuan dasar menjalankan Linux (misal Debian, Ubuntu, atau Red Hat Linux)

Berikut ini perintah-perintah dasar yang ada di Ghost-CLI.

Backup & Restore

  • ghost backup – Untuk melakukan pencadangan total pada server Ghost saat ini
  • ghost export file – Untuk mengekspor konten dari server Ghost ke file.
  • ghost import [namafile] – Untuk mengimpor konten dari file backup ke Ghost

Pembaruan Versi

  • ghost check-update – Untuk memeriksa apakah ada pembaruan atau tidak
  • ghost update – untuk memperbarui Ghost ke versi terbaru
  • ghost force-update – Untuk memperbarui Ghost (walaupun versi terbaru sudah terpasang)
  • ghost version – Menampilkan versi Ghost saat ini dan juga versi dari Ghost-CLI

Diagnosis

  • ghost doctor – Untuk memeriksa apakah terjadi error atau tidak, salah satu fungsinya yaitu memeriksa konfigurasi, mirip dengan nginx -t dan apachectl.
  • ghost ls – Untuk melihat server yang sedang berjalan dan port yang digunakan
  • ghost log [namafile] – Untuk melihat log dari file, jika menggunakan perintah ghost log, maka yang tampil adalah log terbaru/paling akhir dari server
  • ghost run – Digunakan untuk melakukan debugging, atau jika Ghost mengalami error

Manajemen Server

  • ghost start – Perintah untuk menghidupkan server Ghost, tambahkan nama server menggunakan opsi name jika memiliki lebih dari satu server. Misal ghost start maucariapacom
  • ghost stop – Untuk menghentikan server Ghost, tambahkan nama server menggunakan opsi name jika memiliki lebih dari satu server. Misal ghost stop maucariapacom
  • ghost restart – Untuk memulai ulang server Ghost
  • ghost uninstall – Untuk menghapus server Ghost
  • ghost migrate – Untuk melakukan migrasi antar server

Kesimpulan

Menggunakan Ghost-CLI bisa dibilang gampang-gampang susah, namun ada baiknya Anda belajar atau menguasai dasar-dasar terminal Linux seperti perintah mkdir, rm, ls, sudo, dan lainnya sehingga tidak mengalami kesulitan ketika menggunakan Ghost-CLI.

Jika mengalami kesulitan dalam menggunakan atau instalasi Ghost, hubungi saya melalui formulir kontak atau melalui email.