Saya memiliki peran khusus dalam pengaturan saya dan saya ingin dapat secara otomatis mengubah peran pengguna melalui fungsi. Katakanlah pengguna A memiliki peran PELANGGAN, bagaimana cara mengubahnya ke EDITOR? Saat menambahkan peran, kami hanya:
add_role( $role_name , $role_display_name , array( 'read' => true,
'edit_posts' => false,
'delete_posts' => false, ));
Bagaimana dengan mengubah peran? Apakah ada sesuatu seperti:
change_role($old_role, $new_role);
UPDATE: Saya pikir ini akan dilakukan:
$wp_user_object = new WP_User($current_user->ID);
$wp_user_object->set_role('editor');
sumber
remove_role()
danadd_rule()
menyimpan data ke database?Perhatikan bahwa ada cara yang lebih sederhana untuk mengubah peran pengguna yang sangat membantu ketika Anda tidak tahu peran pengguna saat ini:
->set_role()
Contoh:
sumber
Untuk mengekstrapolasi jawaban t31os, Anda dapat menampar sesuatu seperti ini di file fungsi Anda jika Anda ingin melakukan ini secara terprogram berdasarkan kondisi
sumber
$blogID
salah.get_users()
akan menggunakan ID blog saat ini per standarnya.Anda dapat mengubah peran pengguna mana pun dengan mengedit profil pengguna. Tidak perlu menambahkan kode lagi ketika opsi ini sudah dibangun ke WordPress.
Atau
Anda bisa menggunakan kode untuk mengubah semua pengguna saat ini dengan peran pelanggan menjadi editor:
sumber
Ada fungsi WordPress untuk itu!
Saya pikir yang terbaik adalah menggunakan fungsi WordPress, jika dan kapan tersedia.
Anda dapat menggunakan fungsi wp_insert_user () , di mana salah satu argumen yang perlu Anda berikan adalah $ userdata ['role']. Dalam argumen ini Anda bisa menentukan peran yang ingin Anda ubah pengguna.
sumber
Anda harus menyertakan /wp-includes/registration.php, jika Anda menggunakan kode sebagai skrip yang berdiri sendiri. Salam Uwe
sumber
Anda dapat menggunakan wp_update_user . Kode Anda harus seperti ini:
sumber
sumber
Saya tahu ini Posting yang sangat lama, tetapi saya telah menemukan bahwa peran untuk pengguna disimpan dalam
wp_usermeta
tabel dengan kunciwp_capabilities
dimeta_key
kolom.Jika Anda ingin mengubah peran pengguna, Anda dapat melakukannya dengan fungsi sederhana ini.
Ada dua cara untuk menggunakan fungsi ini.
Jika Anda ingin mengubah peran untuk peran tunggal.
Atau jika Anda ingin menambahkan multi peran ke pengguna, gunakan peran sebagai larik di parameter kedua.
Semoga berhasil.
sumber