zhilevan - terima kasih untuk kode yang bagus agar saya mulai menyelesaikan masalah ini dengan cepat. Saya memiliki situs di mana ada peran pengguna umum "klien" masuk sehingga klien dapat mengunggah dan mengunduh file. Akun pengguna akan dibagikan di antara banyak klien yang berpotensi untuk diunggah atau unduh "satu kali" dan kami tidak ingin mereka mengubah nama pengguna, kata sandi, atau hal lain apa pun untuk akun umum ini. Saya yakin ada cara yang lebih elegan untuk melakukan ini, tetapi ini kode saya untuk "mematikan opsi edit" berdasarkan peran pengguna. (Saya mencoba modul pelindung pengguna, tetapi tidak bisa berfungsi). Inilah kode saya jika ada orang lain yang merasa berguna.
function mymodule_form_alter(&$form,$form_state,$form_id) {
global $user;
if ($form_id == "user_profile_form") {
if(in_array('Client',$user->roles) && isset($form['account'])) {
$form['account']['name']['#disabled']=TRUE;
$form['account']['current_pass']['#disabled']=TRUE;
$form['account']['current_pass']['#description']='';
$form['account']['mail']['#disabled']=TRUE;
unset($form['picture']);
unset($form['overlay_control']);
}
}
}