Tiga hari setelah saya tutup insiden DDoS klien e-commerce muslim Surabaya (cerita lengkapnya di artikel 3-layer defense Cloudflare WAF + fail2ban), WhatsApp masuk lagi:
“Bro, setelah Anda pasang Cloudflare + fail2ban, site stabil. Tidak down lagi. Tapi tetap lambat, loading 3 detik di HP. Tolong cek kenapa.”
Sabtu sore, 17:20 WIB. Saya buka WP Admin → Plugins → Active. Hitungan saya: 24 plugin aktif. Banyak yang saya tidak kenal, klien install bertahap selama 2 tahun, sebagian besar dia sendiri lupa kenapa install.
Install Query Monitor (development tool, dihapus setelah audit). Refresh homepage. Buka tab Queries → Queries by Component:
1. Wordfence 412 queries (38%)
2. WP-Optimize 89 queries (8%)
3. Jetpack 81 queries (7%)
4. WordPress Core 287 queries (26%)
5. Astra theme 132 queries (12%)
6. (lainnya) 101 queries (9%)
Wordfence sendirian sumbang 38% query DB. Sebelum hari itu saya pikir Wordfence ringan karena “cuma security plugin”. Saya salah.
45 menit audit dengan checklist 7-point (yang akan saya share di section 3). Hasil: 5 plugin saya banned permanen, 8 plugin saya saran remove (klien setuju), 11 plugin saya keep. Setelah uninstall + clear cache + run GTmetrix 3 kali: TTFB dari 423 ms ke 198 ms, 53% improvement. Tanpa upgrade VPS, tanpa tambah cache layer, tanpa sentuh PHP-FPM config.
Sejak hari itu, 5 plugin yang sama saya banned di semua 12 klien WordPress saya. Artikel ini adalah list-nya, beserta alasan teknis dengan angka, alternatif yang saya pakai, dan section “kapan saya boleh whitelist” untuk tiap plugin.
1. Kenapa Plugin Audit, Kenapa Sekarang
Plugin adalah single point of failure terbesar di stack WordPress. Lebih dari core (yang di-maintain ratusan kontributor), lebih dari theme (yang biasanya pasif tidak inject query/network), lebih dari hosting (yang Anda kontrol). Setiap plugin = code orang lain yang Anda kasih akses penuh ke DB + filesystem + outbound network.
Angka dari log saya selama 14 bulan ngelola 12 klien (24 site total):
- 17 CVE ditemukan di plugin terpasang. Sebagian patched dalam 24 jam dari disclosure (Wordfence, Yoast). Sebagian baru patched setelah 2–3 minggu (plugin niche kecil). Dua plugin di-EOL oleh vendor, saya forced remove.
- Plugin terpasang rata-rata sebelum audit: 18–24 per site. Range 14–32.
- Plugin tersisa setelah audit pertama: 8–11 per site. Rata-rata 9.
“Less plugin = less attack surface” bukan slogan. Ini matematika: setiap plugin tambahan = N baris code baru + M endpoint REST baru + K query DB baru + tambahan probability CVE muncul. Kalikan dengan 24 site klien, akumulasinya tidak pernah kecil.
Filosofi saya sederhana: plugin audit adalah preventive maintenance, bukan event sekali setup. Quarterly review wajib. Trigger ad-hoc setiap kali ada CVE disclosure di plugin yang dipakai, atau setelah WordPress major update.
Takeaway: plugin yang Anda lupa kenapa install hari ini, akan jadi pintu masuk attacker tahun depan.
2. 5 Plugin yang Saya Banned Permanen
Catatan sebelum lanjut: list ini berdasar pengalaman saya mengelola klien dengan setup spesifik (Cloudflare proxy + Nginx 1.24 + PHP 8.3-FPM + MariaDB 10.11). Use case Anda mungkin berbeda. Yang saya rekomendasikan Anda adopt adalah 7-point checklist di section 5, bukan list 5 plugin ini secara harfiah.
2.1. 🚫 Wordfence Free (security plugin)
Active install: 4+ juta. Last update: aktif rutin (vendor responsive). CVE history: 3 CVE major dalam 24 bulan terakhir (semua patched cepat).

Wordfence bukan plugin jelek. Untuk site tanpa Cloudflare, untuk solo blogger yang tidak mau setup OS-level security, Wordfence masuk akal. Untuk klien saya dengan setup Cloudflare proxy + fail2ban, Wordfence adalah redundansi yang mahal.
Kenapa Saya Banned
- PHP-FPM memory delta: +85 MB per request. Diukur dengan Query Monitor + Tideways di staging. Wordfence load module firewall, scan engine, dan reputation feed di setiap request, bahkan untuk asset statis kalau .htaccess belum rapi.
- TTFB delta: +112 ms. Firewall scan inline = setiap request lewat 4 stage pre-WordPress hook check sebelum render dimulai.
- DB queries +412 query. Live reputation lookup, hit counter, login audit log, scan queue. Banyak yang bisa dimatikan tapi tetap ada baseline ~150 query.
- Redundansi dengan Cloudflare WAF + fail2ban. Block bot, IP reputation, rate limit, country block, semua bisa di edge atau OS layer. Block di PHP-FPM artinya request sudah masuk = sudah late. Setiap byte yang sampai PHP-FPM adalah byte yang harusnya ditolak Cloudflare/Nginx duluan.
Alternatif yang Saya Pakai
- Edge (block sebelum origin): 3-layer defense Cloudflare WAF + fail2ban – 5 WAF custom rules + Bot Fight Mode.
- OS layer (block sebelum PHP): fail2ban dengan 4 jail nginx (lihat artikel sama, Fase 7).
- Scanner periodik (bukan inline): WPScan CLI di-run via cron mingguan.
- Malware scan eksternal: Sucuri SiteCheck (free public scanner) sebulan sekali.
Kapan Saya Boleh Whitelist
Tidak pernah untuk site dengan Cloudflare proxy aktif + akses sysadmin ke origin. Mungkin OK untuk: site internal/intranet tanpa Cloudflare, atau site yang owner-nya non-technical dan tidak mau touch SSH.
2.2. 🚫 WP-Optimize (DB cleanup + caching combo)
Active install: 1+ juta. Last update: rutin. CVE history: 1 CVE medium pada modul cache (2023, patched).
WP-Optimize jual diri sebagai “all-in-one performance plugin”: DB cleanup + cache + image compression. Untuk site dengan stack default shared hosting, mungkin masuk akal. Untuk klien saya yang sudah pakai Nginx FastCGI Cache di OS layer + MariaDB 10.11 modern, WP-Optimize menambah masalah lebih dari menyelesaikan.
Kenapa Saya Banned
- “DB optimization” sebagian besar overlap dengan InnoDB auto-management. MariaDB 10.11 sudah handle index rebalancing dan tablespace defragmentation secara internal. Manual
OPTIMIZE TABLEdi 2025+ punya efek marginal di workload OLTP normal. - Aggressive transient cleanup hapus transient yang masih valid. Object cache yang baru di-set 5 menit lalu bisa langsung di-purge. Akibatnya: request berikutnya regenerate dari DB, site sementara lambat tepat saat cleanup jalan.
- Cache layer-nya conflict dengan Nginx FastCGI Cache. Dua layer cache yang invalidasinya tidak singkron = double-cache problem (saya bahas di 3-layer cache stack).
- DB size delta setelah uninstall: hanya −8 MB rata-rata. “DB bloat” yang dia “fix” sebagian dari plugin dia sendiri (option setting, scan log, cache table).
Alternatif yang Saya Pakai
- Cache: Nginx FastCGI Cache tanpa plugin – server-level, invalidasi via Nginx Helper hook.
- DB optimization: wp-cli cron mingguan, 3 baris:
bash wp transient delete --expired wp post delete $(wp post list --post_status=trash --format=ids) --force wp db optimize
- Revision limit: di
wp-config.php:
php define( 'WP_POST_REVISIONS', 5 ); define( 'AUTOSAVE_INTERVAL', 300 );
Kapan Saya Boleh Whitelist
Tidak pernah untuk klien dengan akses SSH ke server. Manual wp-cli cron always more predictable than plugin auto-clean.
2.3. 🚫 All-in-One WP Migration Free
Active install: 5+ juta. Last update: rutin. CVE history: 2 CVE major (2023 + 2024) terkait import bypass auth, kedua-nya butuh perhatian khusus saat update.
Plugin migration paling populer di WordPress ekosistem, dan saya banned karena pengalaman 3 kali corruption saat restore di production dalam 14 bulan.
Kenapa Saya Banned
- Free tier limit 512 MB upload. Site rata-rata klien e-commerce saya melewati limit ini dalam 6–8 bulan. Klien di-force upgrade ke Premium $59/tahun, bukan masalah harga, tapi vendor lock-in di plugin yang fragile.
- Restore process timeout-prone. 3 kali saya temui pattern yang sama: timeout saat re-import wp_postmeta besar + collation mismatch (
utf8mb4_unicode_civsutf8mb4_general_ci) → data corrupt sebagian. Recovery butuh manual SQL dump dari backup terpisah. - No CLI automation. Proses UI-based, Anda harus klik tombol di browser, tidak ada cara automate untuk staging refresh nightly.
- Single-file backup. Tidak ada incremental backup. Tiap snapshot = full DB + full uploads → bandwidth waste + waktu lama.
Alternatif yang Saya Pakai
- Backup terjadwal: backup otomatis rclone scripted ke Backblaze B2 / S3.
- Migrasi site (one-off): 3 baris wp-cli:
bash wp db export site-original.sql --add-drop-table rsync -avz wp-content/ user@new-server:/var/www/site/wp-content/ wp search-replace 'https://old-domain.com' 'https://new-domain.com' --all-tables
- Premium plugin alternative (kalau klien insist plugin-based): Duplicator Pro $69/tahun, jauh lebih reliable, support CLI mode, incremental backup.
Kapan Saya Boleh Whitelist
OK untuk hobby blog ukuran <100 MB (one-time migration). Tidak pernah untuk klien production atau site dengan revenue.
2.4. 🚫 Jetpack (full features)
Active install: 5+ juta. Last update: rutin (vendor Automattic). CVE history: 6 CVE dalam 18 bulan (sebagian besar di module Carousel + REST endpoint).
Jetpack adalah “Microsoft Office of WordPress”, semua-dalam-satu, banyak fitur, banyak overhead. Untuk power user yang pakai 3–4 module spesifik, mungkin worth. Untuk klien rata-rata yang install Jetpack karena “rekomendasi setup wizard” dan tidak pernah audit module mana yang aktif, Jetpack adalah net negative.
Kenapa Saya Banned
- PHP-FPM memory delta: +60 MB per request bahkan dengan sebagian besar module dimatikan. Core Jetpack tetap load REST API endpoint, sync queue ke WP.com, dan telemetry tracking.
- Default-enabled modules yang tidak dibutuhkan: Sharing, Likes, Subscriptions, Carousel, Tiled Galleries, Brute Force Protection, Photon CDN. Semua bisa OFF, tapi default install ON.
- Telemetry ke server Automattic. Data usage tracking + site metric. Untuk klien yang sadar GDPR + UU PDP, ini privacy concern yang tidak bisa di-opt-out total tanpa hack.
- Brute Force Protection module conflict dengan Cloudflare + fail2ban. Tiga layer login protection = false positive saat user sah pakai password manager auto-fill.
- Photon CDN konek ke WP.com server, bukan edge global. Latency dari Indonesia ke US-East (WP.com origin) lebih buruk dari Cloudflare yang punya PoP di Jakarta + Singapore.
Alternatif yang Saya Pakai (per Module)
| Jetpack Module | Pengganti |
|---|---|
| Akismet (anti-spam) | Plugin standalone Akismet Anti-Spam, sama vendor, tanpa Jetpack |
| CDN / Photon | Cloudflare proxy (bukan Photon) |
| Backup | rclone + Backblaze B2 scripted |
| Image optimization | ShortPixel ($10/bulan) atau Cloudflare Images |
| Site stats | Google Analytics 4 (free) atau Plausible self-hosted |
| Newsletter / Subscriptions | MailerLite Free atau Mailchimp Free |
| Brute Force Protection | Cloudflare WAF rule “Protect wp-login” + fail2ban jail |

Kapan Saya Boleh Whitelist
Kalau klien sangat insist pakai Jetpack Newsletter Subscriptions (fitur email follow-up bawaan), saya boleh enable Jetpack dengan semua module OFF kecuali Subscriptions. Memory delta turun ke ~15 MB. Tapi saya tetap rekomendasikan migrasi ke MailerLite jangka panjang.
2.5. 🚫 Hello Dolly
Active install: pre-installed di setiap WordPress fresh install. Last update: jarang. CVE history: 0 (so far).
Kenapa Saya Banned
Plugin developer joke dari Matt Mullenweg, display random lyric “Hello, Dolly” oleh Louis Armstrong di admin dashboard. Zero functional value untuk klien.
- Footprint mini (1 file, ~3 KB), tapi: attack surface tetap ada. Kalau ada CVE di fungsi
hello()di-load setiap admin page, semua site yang aktifkan kena. - Bingung-in klien yang lihat list plugin: “ini buat apa?”
- Tidak pernah ada use case real untuk production site.
Alternatif
Tidak ada. Just delete.
Kapan Saya Boleh Whitelist
Tidak pernah. Hapus saat fresh install WordPress, sebelum Anda tambah plugin lain.
3. 7-Point Plugin Audit Checklist Saya
Daripada copy list 5 plugin saya di atas, lebih baik Anda adopt methodology ini untuk audit context Anda sendiri.
3.1. Active Install Count + Maintenance Signal
100k install + last update <6 bulan = OK. <5k install = red flag (kecuali plugin niche dengan komunitas kecil aktif). Cek di WordPress.org plugin page.
3.2. Last Update
wp plugin status wordfence --field=last_updated
≤6 bulan = OK. 1–2 tahun = caution (cek changelog manual). >2 tahun = banned permanen, plugin abandoned di WordPress ekosistem = liability.
3.3. CVE History
Cek di wpscan.com/plugins/<slug>. Lihat:
- Berapa CVE total?
- CVE terakhir kapan patched?
- Vendor responsive (patched <72 jam dari disclosure)?
Plugin dengan history 3+ CVE high severity dalam setahun + vendor yang lambat patch = banned.
3.4. Code Footprint (Query Count)
Install plugin di staging (bukan production). Install Query Monitor. Refresh homepage. Buka tab Queries by Component. Hitung query plugin tersebut.
- 0–10 query: OK
- 10–25 query: caution, audit per request
- >25 query: banned kecuali plugin essential (Yoast SEO bisa 15–20 query, masih OK)
3.5. PHP Memory Delta
Query Monitor tab Memory. Bandingkan dengan baseline (tanpa plugin tersebut). Plugin yang naik:
- <10 MB: OK
- 10–50 MB: caution, must justify functional value
- >50 MB: banned kecuali truly essential
3.6. TTFB Benchmark
Run GTmetrix Hong Kong server, 3× sebelum install + 3× sesudah install. Median delta:
- <30 ms: OK untuk plugin “non-essential”
- 30–80 ms: harus ada strong functional reason
- >80 ms: banned
3.7. Vendor Reputation
- Preferred: independent developer dengan public GitHub activity, support forum responsive di WP.org.
- Caution: plugin dari “marketplace seller” anonim, lisensi pakai key activation eksternal.
- Monitor closely: plugin dari startup VC-backed (history pivot atau EOL, Yoast lokal pernah hampir EOL setelah acquisition).
3.8 Tabel Ringkas Threshold
| Kriteria | OK | Caution | Banned |
|---|---|---|---|
| Active install | >100k | 5k–100k | <5k |
| Last update | <6 bln | 6–24 bln | >24 bln |
| CVE/tahun | 0–1 | 2–3 | >3 |
| Query/request | <10 | 10–25 | >25 |
| Memory delta | <10 MB | 10–50 MB | >50 MB |
| TTFB delta | <30 ms | 30–80 ms | >80 ms |
3.9 Pro tip 💡 #1 Deactivate Dulu, Delete Belakangan
JANGAN langsung uninstall plugin saat audit. Deactivate, observe site selama 5–7 hari, lalu Delete. Banyak plugin inject fungsi yang tidak obvious, Schema markup, custom shortcode di post lama, taxonomy field. Kalau ada yang patah, Anda akan ketahuan di 5–7 hari trial, dan reactivate dalam 1 klik.
4. Tabel Comparison: 5 Banned vs Alternative
| Banned Plugin | Memory Cost | TTFB Cost | Alternative Saya | Kategori |
|---|---|---|---|---|
| Wordfence Free | +85 MB | +112 ms | Cloudflare WAF + fail2ban | Free (edge + OS) |
| WP-Optimize | +18 MB | +24 ms | wp-cli cron + Nginx FastCGI Cache | Free (OS) |
| All-in-One Migration | +12 MB | +8 ms | rclone + mysqldump scripted | Free (OS) |
| Jetpack (full) | +60 MB | +45 ms | Akismet + Cloudflare + GA4 | Free (mix) |
| Hello Dolly | +0.5 MB | +0 ms | (uninstall) | – |
| Total dampak hapus 5 | −175.5 MB | −189 ms |

5. Plugin yang Saya RECOMMEND (Whitelist) Untuk Klien
Bukan endorsement, ini list yang sudah lulus 7-point audit dan saya pasang di semua klien WordPress:
- Akismet Anti-Spam, anti-spam comment + form. 5+ juta install, vendor Automattic, ringan (<5 MB memory).
- Rank Math (atau Yoast SEO, pilih salah satu), SEO + Schema. Saya prefer Rank Math karena lebih banyak fitur di free tier (Schema generator, redirections, 404 monitor).
- WP Mail SMTP, replace WordPress wp_mail() default dengan SMTP relay (SendGrid / Mailgun / Postmark). Critical untuk reliability email transactional (order confirmation, password reset).
- Redis Object Cache by Till Krüss, kalau Anda pakai Redis (lihat artikel 3-layer cache stack). Plugin terbaik untuk integrasi Redis dengan WordPress object cache API.
- Query Monitor, development tool. Saya install saat audit, hapus setelah selesai. JANGAN biarkan aktif di production (load overhead untuk admin user).
- WPS Hide Login, ganti URL
/wp-login.phpke custom path. Bukan security by obscurity utama, tapi kurangi 99% bot scanner yang asal hit/wp-login.php. Pasangan baik dengan Cloudflare WAF rule. - User Switching, switch user tanpa logout. Wajib untuk dev/sysadmin yang debug klien report bug “saya tidak bisa lihat halaman ini”.
- WP Crontrol, manage WP cron job. Penting karena WP cron jalan via pageview by default (rapuh). Saya gabung dengan system cron +
wp cron event run --due-now.
5.1 Pro tip 💡 #2 Backup Sebelum Uninstall Plugin yang Simpan Setting di DB
Plugin seperti Wordfence simpan ratusan option + table custom di DB. Sebelum uninstall, install “Advanced Database Cleaner” sekali di staging, lihat sisa orphan data yang akan tertinggal. Setelah uninstall plugin utamanya, hapus orphan via wp-cli:
wp option list --search="wordfence*" --field=option_name | xargs -n1 wp option delete
wp db query "DROP TABLE IF EXISTS wp_wfblocks7, wp_wfconfig, wp_wfhits, wp_wfcrawlers;"
6. Pushback dari Klien (dan Jawaban Saya)
Argumen yang sering muncul saat saya present audit plan ke klien.
“Wordfence punya 4+ juta install. Masa Anda lebih tahu dari mereka?”
Active install count ≠ “best for your stack”. 4 juta install dominan dari user shared hosting tanpa CDN, Wordfence memang masuk akal di sana. Untuk klien dengan Cloudflare proxy aktif, security stack sudah di-handle di edge. Tambahan Wordfence = redundansi yang berbiaya 85 MB RAM + 112 ms TTFB.
“Saya pakai Jetpack dari awal install WP, susah ganti.”
Migrasi Jetpack ke per-feature alternative butuh 2–4 jam total. Saya bantu klien lakukan satu kali, dokumentasikan, dan setelah itu klien sendiri yang manage. Investment kerja sekali, savings forever.
“WP-Optimize katanya bagus dari review YouTube.”
YouTube review WordPress 90% adalah affiliate marketing, reviewer dapat komisi dari plugin yang dia rekomendasikan. Cek setiap review apakah ada disclosure (#ad / affiliate link). Untuk evaluasi teknis: cek Query Monitor di staging Anda sendiri, bukan kata orang.
“Pakai banyak plugin gampang, kenapa minimalist?”
Minimalist bukan ideologi, ini mitigasi risk. Setiap plugin = pintu masuk attacker, sumber CVE potensial, overhead memory. 9 plugin essential lebih mudah di-audit + di-patch daripada 24 plugin “yang penting fungsi jalan”.
7. Plugin Audit Cadence
Quarterly (setiap 3 bulan) saya jalankan quick audit 10 menit per site:
wp plugin list --status=active --format=table, bandingkan dengan baseline list.- Buka wpscan.com, cek CVE history untuk semua plugin di list.
- Test homepage di GTmetrix, bandingkan TTFB dengan baseline 3 bulan lalu.
Trigger deep audit (45 menit) di luar quarterly:
- Setelah CVE disclosure di plugin yang dipakai (subscribe ke wpscan.com mailing list).
- Setelah WordPress major update (X.0 release).
- Setelah PHP version upgrade (8.3 → 8.4 nanti).
- Setelah klien minta investigation karena “site terasa lambat”.
7.1 Pro tip 💡 #3 Plugin Inventory Spreadsheet
Maintain 1 spreadsheet (Google Sheet / Notion / Airtable) dengan kolom:
| Plugin | Version Install Date | Alasan Pakai | Last Audit | Status | Notes |
|---|
Ini “plugin inventory” yang biasa hilang di freelance/agency workflow. Tanpa-nya, 6 bulan dari sekarang Anda akan lupa kenapa plugin X aktif di site klien Y.
8. FAQ
Saya bukan developer, gimana saya audit plugin sendiri?
Mulai 3 langkah simple. Pertama: di WP Admin → Plugins, deactivate semua plugin yang TIDAK Anda kenal atau lupa fungsinya. Kalau setelah 1 minggu trial tidak ada efek negatif, hapus. Kedua: install Query Monitor (free), refresh homepage admin, buka tab Queries → Queries by Component → identify plugin yang generate >10 query per request. Ketiga: untuk plugin yang ragu, search di wpscan.com/plugins/ untuk CVE history. Plugin dengan 3+ CVE high dalam 12 bulan = sinyal pindah.
Wordfence Premium ($119/tahun) lebih worth dari Free?
Untuk site tanpa Cloudflare, Premium masuk akal, fitur seperti Country Blocking + 2FA + IP Reputation real-time hanya di Premium. Untuk site dengan Cloudflare proxy + fail2ban: tidak ada nilai tambah signifikan. Semua Premium feature bisa di-cover Cloudflare WAF + fail2ban + plugin Two-Factor standalone (free). Hemat $119/tahun.
Jetpack Free dengan Brute Force Protection ON saja, OK?
Brute Force Protection module di Jetpack relatif ringan (delta ~15 MB memory). Kalau Anda HANYA enable itu dan disable semua module lain, dampak performa minimal. Tapi tetap saya rekomendasikan: copot Jetpack total, install Limit Login Attempts Reloaded standalone (lebih ringan, lebih fleksibel, tidak butuh akun WP.com). Atau cukup matikan XML-RPC tanpa plugin + Cloudflare WAF rule untuk wp-login.
Plugin audit gimana untuk multisite WordPress?
Multisite lebih kompleks: network-activated plugin di-audit di level network, per-site plugin di-audit per site. Command yang saya pakai:
wp plugin list --network --status=active
Untuk loop per-site:
for site in $(wp site list --field=domain); do
echo "=== $site ==="
wp plugin list --url=$site --status=active --format=table
done
Saya pakai LMS plugin LearnDash / LifterLMS yang heavy. Apakah perlu di-audit juga?
LMS plugin essential untuk core function site, tidak masuk kategori “optional yang bisa dihapus”. Audit-nya beda fokus: bukan apakah hapus, tapi apakah tuning OK. Misalnya: exclude /courses/lesson/* dari Nginx FastCGI cache (karena progress per user), tambah Redis Object Cache untuk meta query LMS, exclude wp-admin LearnDash dari Cloudflare cache aggressive. Saya rencana tulis artikel terpisah “WordPress LMS Performance Tuning”.
Saya developer, bukannya plugin selalu ada karena WordPress ekosistem-nya ‘plugin-first’?
Benar. Plugin tidak bisa dihindari total, bahkan SEO, security, dan caching butuh plugin untuk integrasi UI-friendly dengan WP Admin. Tapi “pakai plugin” vs “pakai banyak plugin” beda jauh. Audience artikel ini adalah developer/sysadmin yang menemukan klien dengan 18–25 plugin aktif dan tidak sadar dampak akumulatif. Setelah audit dengan 7-point checklist, biasanya tersisa 8–12 plugin essential, cukup untuk WordPress operate normal.
9. Penutup
Plugin audit adalah preventive maintenance yang paling jarang dilakukan di workflow freelance/agency WordPress Indonesia. Saya ngerti kenapa, tidak ada client billable hour untuk “review plugin yang sudah Anda pasang setahun lalu”. Tapi 53% TTFB improvement dari kasus klien Surabaya saya, tanpa upgrade VPS dan tanpa tambah cache layer, adalah bukti bahwa plugin yang Anda diamkan adalah hutang teknis yang menumpuk.
Catatan ⚠️ #1 Konteks Klien Anda Mungkin Beda
5 plugin yang saya banned di artikel ini berdasar pengalaman saya di stack spesifik (Cloudflare + Nginx + fail2ban). Anda mungkin punya konteks beda, klien shared hosting tanpa Cloudflare, agency yang sudah lock-in Wordfence Premium 3 tahun, atau site internal tanpa internet. Yang penting Anda adopt: 7-point checklist methodology, bukan list-nya secara harfiah.
Catatan ⚠️ #2 Jangan Banned Saat Klien Tergantung Fitur
Kalau klien sudah pakai Wordfence Premium dan UI-nya sudah jadi daily ops mereka, banned-nya butuh migrasi terstruktur 2–4 minggu (training Cloudflare WAF dashboard, training fail2ban CLI, transfer ownership monitoring). Jangan banned mendadak, klien akan kehilangan visibility yang mereka biasa.
Setelah Anda audit, kemungkinan Anda masih punya plugin essential yang butuh tuning lanjut (cache config, browser cache, WP Cron). Referensi lanjutan:
- Setup VPS Ubuntu 24.04 dari nol + backup otomatis , context infrastruktur.
- Browser cache expiry via Nginx config , alternatif plugin browser cache.
Pakai 7-point checklist saya untuk audit site klien Anda sendiri. Kalau Anda mau second opinion: screenshot Query Monitor “Queries by Component” Anda, kirim ke X (Twitter) @larhtech, saya kasih opini 1-on-1 gratis. Tidak ada catch.
Audit yang baik bukan mencari plugin untuk dibenci, audit yang baik mencari plugin untuk dilepas tanpa kehilangan fungsi. Sembilan plugin essential mengalahkan dua puluh empat plugin “yang penting jalan”, setiap saat.
Last Updated on Mei 23, 2026 by larhtechBro



