回答:
zhilevan –この問題をすばやく解決できるようにしてくれた素晴らしいコードに感謝します。クライアントがファイルをアップロードおよびダウンロードできるように、一般的なユーザーロール「クライアント」ログインがあるサイトがあります。ユーザーアカウントは、「1回限り」のアップロードまたはダウンロードのために潜在的に多くのクライアント間で共有され、この一般的なアカウントのユーザー名、パスワード、またはその他のものを変更することは望ましくありません。これを行うにはもっとエレガントな方法があると思いますが、ユーザーの役割に基づいて「編集オプションを停止する」ための私のコードを次に示します。(ユーザー保護モジュールを試しましたが、機能しませんでした)。他の誰かが便利だと思った場合の私のコードを以下に示します。
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']);
}
}
}