ユーザープロファイルにフィールドを追加したいのですが。データベースに保存されている彼に関するほとんどすべての情報をユーザーが編集できるようにしたい。私はいくつかのアイデアを持っています:おそらくフォームAPIを使用して行うことが可能です。
これをモジュールに配置できるように、コードによってユーザーフィールドを追加する方法。
私はこれを見つけました: field_create_field コメントにモジュールを有効にしたときにユーザー用のフィールドを作成する方法を含めます:
/**
* Implementation of hook_enable().
*/
function MYMODULE_enable() {
// Check if our field is not already created.
if (!field_info_field('field_myField')) {
$field = array(
'field_name' => 'field_myField',
'type' => 'text',
);
field_create_field($field);
// Create the instance on the bundle.
$instance = array(
'field_name' => 'field_myField',
'entity_type' => 'user',
'label' => 'My Field Name',
'bundle' => 'user',
// If you don't set the "required" property then the field wont be required by default.
'required' => TRUE,
'settings' => array(
// Here you inform either or not you want this field showing up on the registration form.
'user_register_form' => 1,
),
'widget' => array(
'type' => 'textfield',
'weight' => '1',
),
);
field_create_instance($instance);
}
}
ページを見つけるのは難しいですが、/ admin/config/people/accounts/fieldsでユーザーにフィールドを追加できます。
D7のプロファイルは少し奇妙です。 profile2 モジュールはあなたが必要とすることをするかもしれません。
Drupal 7で、このプロセスを使用して、異なるフィールドタイプ(イメージ、タグフィールドなど)を持つ新規または既存のフィールドをユーザープロファイルに追加します。
管理メニューの「管理→構成→人:アカウント設定」に移動し、「フィールドの管理」(2番目のタブ)に移動します。
(または、URLで直接パスを使用します:/admin/config/people/accounts/fields
)。
どの種類のフィールドを追加しますか?