Sebelum Tulisan Dimulai…
Ini adalah lanjutan dari yang MySQL di WordPress Terlalu Besar, Ini Solusinya; Studi Kasus Website Berita (Bagian 1). Di posting kali ini kita menyeting plugin cache agar efisien dan juga menyeting berkas .htaccess agar bisa me-redirect sehingga jika pengunjung mengakses ke tahun 2013 maka, akan mengunjungi website arsip.
Tulisan Sesudah Sebelum Tulisan Dimulai…
Langkah kita selanjutnya:
- Login ke wp-admin, lalu seting plugin cache (dalam hal ini saya memakai plugin ZenCache, plugin cache favorit saya, mudah digunakan dan sangat terasa perubahan load-nya) agar tidak perlu membersihkan cache otomatis (karena halaman arsip kemungkinan tidak akan diupdate).
- Lalu, buat waktu expired arsip menjadi 1 tahun (bisa lebih jika mau)
- Kemudian buat menjadi auto rebuild, agar cache tersedia walaupun tidak sedang dikunjungi oleh pengunjung. Hal ini penting agar halaman tidak perlu melakukan query ke database.
- Jika sudah, kali ini menuju ke website utama (ingat bukan ke website arsip ya).
- Ubah berkas .htaccess, masukkan kode di bagian paling atas:
RedirectMatch 301 ^/2013/(.*)$ http://2013.namadomainklien.com/2013/$1 RedirectMatch 301 ^/wp-content/uploads/2013/(.*)$ http://2013.namadomainklien.com/2013/$1
- Jika sudah semua, silakan dihapus posting tahun 2013 yang ada pada website utama. Dengan query:
DELETE FROM `wp_posts` WHERE `post_date` <= "2013-12-31 00:00:00" AND `post_type`="post"
lalu seperti langkah di bagian pertama, bersihkan tabel `wp_term_relationships` juga `wp_postmeta`
DELETE tr FROM wp_term_relationships tr INNER JOIN wp_term_taxonomy tt ON (tr.term_taxonomy_id = tt.term_taxonomy_id) WHERE tt.taxonomy != 'link_category' AND tr.object_id NOT IN (SELECT ID FROM wp_posts);
SELECT * FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL; DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL;
- Jika sudah, kembali di optimize table:
- Kembali ke website arsip (2013.namadomainklien.com), ubah tautan beranda (ini opsional, hanya jika kamu mau membuat mereka yang mengklik menu “Home” atau “Beranda” di website arsip jadi beralih ke website utama).
- Jika sudah, lanjutkan juga dari awal langkah membuat website arsip untuk tahun 2014.
Tulisan Sesudah Tulisan…
Selesai, dari pengalaman saya, cara ini lumayan me-reduce load CPU dan ram di VPS. Jadi dibanding memaksakan berada pada 1 database yang bisa membuat server stres meningkat, bisa-bisa setiap posting berita membuat lemot bahkan men-shutdown service 😉
Jika mau, bisa juga website utama berbeda VPS dengan website arsip. Silakan dicoba ya, jangan lupa mem-backup (terutama database sebelum mengeksekusi query).
8 Responses