Jak programowo utworzyć nowego użytkownika z niestandardowymi polami?

18

Chcę utworzyć użytkownika z niektórymi niestandardowymi polami. Utworzyłem dodatkowe pola poprzez config> ludzie> informacje o stronie> zarządzaj polami i polami takimi jak imię, nazwisko, miasto itp. Chcę stworzyć użytkownika z tymi niestandardowymi polami.

Jak mogę programowo utworzyć użytkownika?

Pranav Gandhi
źródło

Odpowiedzi:

25

Za pomocą user_savefunkcji Drupal możesz tworzyć nowych użytkowników, takich jak:

$new_user = array(
  'name' => 'JohnDoe',
  'mail' => '[email protected]',
  'pass' => 'password123',
  'status' => 1,
  'field_custom_first_name' => array(LANGUAGE_NONE => array(array('value' => 'John'))), // This becomes $account->field_custom_first_name[LANGUAGE_NONE][0]['value']
  'field_custom_last_name' => array(LANGUAGE_NONE => array(array('value' => 'Doe'))),
  'access' => REQUEST_TIME,
  'roles' => array(), // No other roles than Authenticated
  //'roles' => array('10' => '10', '11' => '11'), // If you want to specify additional roles, the numbers are role_id's
);
user_save(NULL, $new_user);
Pszczół
źródło
Nie jestem pewien, co accessrobi, skopiowałem to z komentarzy na stronie user_save na temat do i zmodyfikowałem, więc nie jestem w 100% pewien , co accessrobi. Zakładam, że jest to data ostatniego dostępu, więc jeśli jest to nowy użytkownik, domyślam się, że nie powinien być ustawiony.
Beebee
dzięki, że działa dobrze dla mnie. i przepraszam za spóźnioną powtórkę.
Pranav Gandhi
@GandhiPranav Nie zapomnij zaakceptować odpowiedzi na pytania, jeśli ci pomogły; Dzięki temu przyszli odwiedzający wiedzą, że konkretne rozwiązanie rozwiązało konkretny problem, i nagradzają osobę odpowiadającą za ich wysiłki. Możesz zaakceptować odpowiedź, klikając znacznik wyboru pod wskaźnikiem głosowania. Dzięki :)
Clive
Dostęp jest tylko ostatnim polem dostępu (jak pole „utworzone”
ergophobe
Działa to w celu tworzenia nowych użytkowników, ale czy nie istnieje „preferowany” sposób encji jak w przypadku węzłów? Coś, co dotyczy podmiotu_reagowania_ubowy („użytkownik”) lub podmiotu_w_adresie (...) Pytam, bo
walczyłem,