Pregunta

I want to develop a module that add fields to user profile in drupal 7, like phone number and CV ... and I don't know how to do that (using Database or using fields API) pls help me.
Any clear tutorials will be appreciated.

¿Fue útil?

Solución

Try to follow the following code

    $myField_name = "NEW_FIELD_NAME";
    if(!field_info_field($myField_name)) // check if the field already exists.
    {
        $field = array(
            'field_name'    => $myField_name,
            'type'          => 'text',
        );
        field_create_field($field);

        $field_instance = array(
            'field_name'    => $myField_name,
            'entity_type'   => 'user', // change this to 'node' to add attach the field to a node
            'bundle'        => 'user', // if chosen 'node', type here the machine name of the content type. e.g. 'page'
            'label'         => t('Field Label'),
            'description'   => t(''),
            'widget'        => array(
                'type'      => 'text_textfield',
                'weight'    => 10,
            ),
            'formatter'     => array(
                'label'     => t('field formatter label'),
                'format'    => 'text_default'
            ),
            'settings'      => array(
            )
        );
        field_create_instance($field_instance);

Hope this works... Muhammad.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top