My Drupalサイトでは、ユーザー名とパスワードのデータを共有することにより、外部サービスとのシングルサインオンが可能になります。ユーザーが新規の場合は、ユーザー名とパスワードを使用して外部サービスに新しいアカウントを作成します。 問題は、外部サービスがユーザー名のスペースに満足していないことです。作成時にプログラムでDrupalユーザー名を変更する
私は、アカウントが作成されているユーザー名からスペースを削除するにはDrupalのモジュールに次のコードを書いた:
function mymodule_user_insert(&$edit, $account, $category){
if($account->is_new){
$name = str_replace(' ', '_', $account->name);
drupal_set_message("CHANGING {$account->name} TO {$name}");
$account->name = $name;
}
}
アカウントが作成されると、私は次のようなデフォルトの確認メッセージが表示されます。
test_test1の新しいユーザーアカウントを作成しました。電子メールは送信されていません。私の文字列置換が効果を取っているが、私は、ユーザーアカウントを表示するとき、それはまだスペースが含ま確認
。
誰かが間違っていると間違っていると指摘してもらえますか?
あなたはDrupalサイトでこれを頼む必要があります。 – rrirower