Eu gostaria de adicionar campos adicionais ao perfil do usuário. Eu gostaria que o usuário pudesse editar quase todas as informações que guardo no banco de dados sobre ele. Eu tenho algumas idéias: talvez seja possível fazer usando a API do formulário.
22
Respostas:
Uma maneira de adicionar campos de usuário por código, para que você possa colocar isso em seu módulo.
Eu encontrei o seguinte: field_create_field com nos comentários uma maneira de criar um campo para seu usuário ao ativar seu módulo:
fonte
'weight' => '1',
à matriz de widgets no$instance
eu adicionarei na minha resposta./admin/config/people/accounts/fields
, em seguida, usar Inspector campo em/admin/config/development/field-inspector
exportar as matrizes definição de instância de campo e de campo para uso em código como o acima.function MYMODULE_uninstall() {field_delete_field('field_myField');}
Achei a página difícil de encontrar, mas em / admin / config / people / accounts / fields você pode adicionar campos aos usuários.
fonte
users
. "Campos" criam novos campos fora da tabelausers
.hook_form_alter(&$form, &$form_state, $form_id)
O perfil no D7 é um pouco estranho. O módulo profile2 pode fazer o que você precisa.
fonte
No Drupal 7, use esse processo para adicionar um campo novo ou existente com diferentes tipos de campo (como Imagem, campo Tags etc.) ao perfil do usuário:
Vá para " Admin → Configuração → Pessoas: configurações da conta " no menu do administrador e depois para " Gerenciar campos " (a segunda guia).
(Como alternativa, use o caminho direto no URL:)
/admin/config/people/accounts/fields
.fonte
Que tipo de campos você deseja adicionar?
fonte