我有一個網站,其中一些用戶將由我們的工作人員註冊,並且不會有與其關聯的電子郵件。我想將電子郵件字段保留爲必填字段,因此我設計了一個隨機電子郵件生成器。在Drupal中掛鉤用戶註冊
function generateRandomEmail() {
$email = 'noemail'. rand(0,1000000) . '@noemail.com';
return $email;
}
因此,我將它附加到用戶註冊表alter,並且它運行良好,可以爲這些用戶有效生成電子郵件。
但是,在此過程中,與主帳戶部分(密碼,用戶名,通知等)相關的所有其他字段都消失了。我的問題是,有沒有一種快速填充我不想改變的字段的方法?我用過drupal_render($ form);在tpl.php中,但它沒有在alter形式中工作。
這裏是我改變形式:
function accountselect_user($op, &$edit, &$account, $category) {
if ($op == 'register') {
$fields['account']['mail'] = array(
'#type' => 'textfield',
'#default_value' => generateRandomEmail(),
);
不是你的問題的答案,但你知道'noemail.com'是一個現有的域名,將收到郵件發送到您的'隨機'電子郵件地址?你應該使用你自己的域名,或者至少是正式保留的'example.com'來防止發送郵件給無關的參與者! – 2010-03-05 10:21:35