TeknoCerdas.com – Salam cerdas untuk kita semua. WordPress adalah Content Management System (CMS) paling populer saat ini. Terlepas dari codebase yang menurut sebagian orang “tidak rapi” namun semua itu bisa ditutupi dengan dokumentasi, templating dan sistem hooks yang super lengkap. Tulisan ini adalah sebuah tutorial bagaimana membuat WordPress cache plugin sendiri. Ya, anda bisa membuatnya dan caranya cukup mudah.
Sebagai pengguna WordPress kita pasti familiar dengan plugin WP Super Cache, W3 Total Cache, WP Rocket dan semacamnya. Kesemua itu adalah beberapa dari sekian banyak WordPress plugin yang diperuntukkan untuk cache.
Apa maksud dari cache? Cache adalah proses untuk membuat salinan statis sebagian atau seluruh bagian dari sebuah halaman WordPress yang dibuka. Sehingga ketika halaman tersebut diakses untuk kedua kali dan seterusnya tidak perlu ada query database, pemanggilan fungsi dan sebagainya. Hasilnya adalah waktu load website menjadi jauh lebih cepat.
Baca Juga
Membuat Plugin WordPress: Penghitung Kata
Daftar isi.
- Konsep Cache pada WordPress
- Struktur dari Plugin
- Membuat Kode dari Plugin TeknoCerdas Cache
- Mencoba Plugin TeknoCerdas Cache
- Improvisasi Plugin
Konsep Cache pada WordPress
Pada WordPress dikenal sebuah file bernama wp-content/advanced-cache.php
. File ini adalah file special dan hanya akan diproses ketika konstanta WP_CACHE
diset ke true
pada file wp-config.php
.
Logika pemrosesan dari plugin yang akan dibuat harus dipasang atau diload pada file wp-content/advanced-cache.php
. Kode yang ada pada file ini adalah salah satu yang paling awal dijalankan WordPress sehingga belum ada proses-proses “berat” dilakukan. Sehingga ini adalah tempat yang cocok untuk meletakkan kode cache.
Satu lagi fungsi yang tidak kalah penting adalah ob_start(). Ini adalah fungsi bawaan dari PHP untuk mengaktifkan output buffering. Output buffer adalah segala hal yang akan dikirimkan oleh WordPress kepada browser atau client. Dengan memanipulasi output buffer maka kita bisa menyimpan output lengkap halaman WordPress untuk disimpan sebagai file statis.
Baca Juga
Static WordPress Hosting pada Infrastruktur TeknoCerdas
Struktur dari Plugin
Plugin yang akan dibuat bernama TeknoCerdas Cache. Struktur dari plugin ini adalah sebagai berikut.
File/Direktori | Kegunaan |
---|---|
teknocerdas-cache/ | Direktori plugin |
- cache-prosessor.php | File untuk memproses cache |
- options-page.php | Halaman Purge Cache pada admin |
- teknocerdas-cache.php | File utama plugin untuk menghubungkan dengan WordPress hooks |
- uninstall.php | Penghapusan file-file yang tidak diperlukan |
wp-content/cache/teknocerdas-cache/ | Direktori untuk menyimpan file-file cache |
Membuat Kode dari Plugin TeknoCerdas Cache
Buat sebuah direktori baru pada wp-content/plugins/
dengan nama teknocerdas-cache
. Gunakan perintah berikut jika menggunakan CLI.
$ mkdir wp-content/plugins/teknocerdas-cache
Saat ini direktori tersebut masih kosong. Berikutnya kita akan membuat file-file PHP yang diperlukan agar plugin tersebut dapat berjalan.
Membuat file teknocerdas-cache.php
Ini adalah file utama dari plugin. Konvensi dari WordPress adalah nama file utama dari plugin sama dengan nama direktorinya. Buka teks editor dan mulai buat file wp-content/plugins/teknocerdas-cache/teknocerdas-cache.php
.
Berikut ini adalah konten dari file tersebut.
WordPress mengambil informasi plugin dari komentar atau docblock /*..*/
yang ada pada awal file diatas.
Ada beberapa hal yang dilakukan disini yaitu:
- Membuat submenu baru pada Admin didalam menu Settings. Lihat
add_action('admin_menu')
- Membuat file
wp-content/advanced-cache.php
saat plugin diaktifkan agar meload filecache-processor.php
. - Menulis file
wp-content/advanced-cache.php
saat plugin dinonaktifkan agar tidak meload filecache-prosessor.php
. - Fungsi
teknocerdas_caches_delete()
digunakan untuk menghapus file hasil cache yang akan dipanggil pada halaman options.
Membuat file options-page.php
File ini fungsinya adalah menampilkan halaman options yang didalamnya terdapat tombol untuk membersihkan file cache yang ada pada direktori wp-content/cache/teknocerdas-cache/
.
Berikut ini adalah konten dari file options-page.php
.
All cache files has been deleted.