WordPress: Cara menukar table_prefix
Assalamualaikum dan selamat pagi,
kali ini sekadar ingin berkongsi cara bagaimana untuk menukar table_prefix WordPress agar tidak mengalami sebarang gangguan, aku ada berkongsi dalam Panduan Ringkas Keselamatan WordPress berkenaan perlunya menukar table_prefix default wp_ kepada table_prefix yang lain. Satu cara mudah adalah dengan menggunakan plugin Wp Prefix Changer, tetapi mungkin anda akan mengalami masalah, sekiranya user database yang kita guna untuk database WordPress itu tidak mempunyai akses penuh. Dalam artikel kali ini, aku akan berkongsi cara untuk menukarkan table_prefix ini secara manual.
Pertama sekali, apa yang perlu kita buat adalah untuk backup terlebih dahulu database WordPress kita, persediaan awal adalah penting, agar kita tidak menyesal di kemudian hari kerana kesilapan yang kita lakukan. Setelah selesai membuat backup, kita boleh memulakan proses ubahsuaian table_prefix WordPress kita.
Langkah kedua.
letakkan fail .maintenance ke directory WordPress anda. Ini untuk mengelakkan daripada pelawat yang cuba untuk melayari blog anda melihat sebarang kesalahan PHP dan sebagainya semasa anda melakukan proses penukaran table_prefix ini. Sila gunakan kod di bawah untuk dimuatkan kedalam fail .maintenance anda.
$value ) {
if ( stristr($cookie, 'wordpress_logged_in_') )
$loggedin = true;
}
return $loggedin;
}
if ( ! stristr($_SERVER['REQUEST_URI'], '/wp-admin') && ! stristr($_SERVER['REQUEST_URI'], '/wp-login.php') && ! is_user_logged_in() )
$upgrading = time();
?>
Seterusnya, jika kita membuka fail wp-config.php, kita akan dapat melihat baris seperti di bawah:
/** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each a unique * prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_';
kita ingin menukar wp_ itu kepada perkataan lain, hanya nombor, huruf dan underscore dibenarkan untuk table_prefix ini, anda boleh memilih gabungan yang anda suka, dalam contoh artikel kali ini aku akan menggunakan 31z1l_ sebagai table_prefix (peringatan: Sila jangan tiru table_prefix ini untuk mengelakkan pihak ketiga meneka table_prefix yang anda gunakan).
setelah anda mengubah table_prefix dalam wp-config.php, anda bolehlah memuat naik fail tersebut.
Langkah keempat perlu dilakukan dalam phpmyadmin, anda perlu mengubah semua table yang awalannya menggunakan wp_ kepada table_prefix yang baru, dalam contoh kali ini adalah 31z1l_ , anda boleh menggunakan kod SQL di bawah untuk melakukan ubahsuaian tersebut.
Rename table wp_commentmeta to 31z1l_commentmeta; Rename table wp_comments to 31z1l_comments; Rename table wp_links to 31z1l_links; Rename table wp_options to 31z1l_options; Rename table wp_postmeta to 31z1l_postmeta; Rename table wp_posts to 31z1l_posts; Rename table wp_terms to 31z1l_terms; Rename table wp_term_relationships to 31z1l_term_relationships; Rename table wp_term_taxonomy to 31z1l_term_taxonomy; Rename table wp_usermeta to 31z1l_usermeta; Rename table wp_users to 31z1l_users;
jika anda menggunakan plugins yang menambah table baru, anda perlu mengubahsuai table tersebut juga.
Seterusnya anda perlu buka table 31z1l_options (nama asal adalah wp_options), klik pada browse table, kemudian dalam option_name, cari wp_user_roles (rujuk gambar di bawah), tukar nama wp_user_roles ini kepada prefixbaru_user_roles (atau dalam contoh kali ini 31z1l_user_roles).

wp_user_roles ini mungkin tidak akan kelihatan pada halaman pertama table anda, sila cari sampai jumpa untuk mengelakkan sebarang masalah yang tidak diingini berlaku.
Langkah berikutnya, buka table 31z1l_usermeta (nama asal wp_usermeta), cari meta_key yang mempunyai wp_ pada awalannya, tukar kepada table_prefix yang baru. Contoh meta_key adalah seperti di bawah:

jika anda mempunyai banyak user, meta_key ini akan berulang, sila pastikan anda mengubah semua meta_key yang terdapat dalam table anda.
Selepas anda selesai menukar meta_key ini, proses penukaran table_prefix telah selesai, anda boleh delete fail .maintenance sebentar tadi, dan layari laman sesawang dengan table_prefix yang baru. Jika ada sebarang persoalan mengenai tutorial kali ini, sila gunakan ruangan komen untuk bertanyakan perkara yang anda tidak faham. Sekiranya anda rasa ragu-ragu untuk melakukan tutorial ini atas apa sebab sekalipun, perkhidmatan Profesional untuk keselamatan WordPress anda sedia untuk digunakan.
apa kelebihan lepas tukar setting ni ek?
ini untuk menyukarkan serangan sql injection yang cuba dilakukan.
oo..ok2… paham.. thanks..
pening aku tengok koding-koding tu
salam kenalan bro
rasa macam tak berani nak “main” kat database ni.
aku try kat localhost jer la
wah lama aku tak main benda alah nie….:)
Saya ada pakai plugin Better WP Security yang bro sarankan dalam ebook tu. Cuma saya agak was-was nak guna function tukar table prefix.
kalau rasa was-was, boleh backup database sebelum guna, saya dah cuba fungsi tu kat plugin Better WP Security, stakat ni takder masalah.
Terima kasih untuk panduan. Insya Allah saya akan mencubanya kelak
[...] #Eizil serta ceritera bersama Database WordPress [...]
entah kenapa badan terasa panas panas macam terkena sahaja… hahahaaha
waaah, pnjg jugak rupanye nak adjust mende nie… #lol
sebab cuaca kot bro, layan air barli atau air kelapa muda bro…
bagi sejuk sket badan tu.
lolx.. buat buat tak tau plak daah~
hehehe… jangan marah erk bro…
tak marah eh.. #lol hahahhaa
kalau nak tukar ni bergantung pada themes jugak ek bro
ikutkan takder kaitan ngan themes, kecuali ada themes yang guna setting page menggunakan table prefix (stakat ni tak pernah jumpa lagi).
owhh macam tu
xpe nanti free nak godeh-godeh ikut tutorial bro ni
worait bro…
kalau ada apa2 persoalan, jangan segan2 untuk tanya…
owh memang penting tukar prefix ni.
Satu lagi beberapa bulan lepas, saya baru perasan ada feature baru dlm plugin security scan, sekarang dah ada function untuk tukar prefix wp gak.
owhh okay, kali terakhir tengok plugin security scan ni, macam ada benda yang tak kena, pastu dah tak tgk dah… terima kasih bro sebab beritahu… nanti saya check balik.
skg pun dah ada function backup db, format .sql
Saya pun tak guna untuk blog sendiri, cuma guna kat blog org lain je