What if anyone needs to use existing fields added from backend to a custom form?
After lots of research, I found a drupal hook which can fulfill this requirement. Please read below to add an existing field to your custom form.
Benefits of using field attached form
- Field will be generated automatically
- Validation will be performed same as admin side
- Store value is easy for the same
I have a field for ‘test’ content type, named Image (field_test_image).
Please find below how can I use my existing fields in my custom form. This is how I took my fields for my content type.
Below is code to use field attached form hook.
/** *
Implements hook_form()
*/
function hook_form($form, &$form_state)
{
$entity_type = 'node';
$entity_info = new stdClass();
$entity_info->type = 'test';
$field = 'field_test_image';
//to attach test content type's field to the form
field_attach_form($entity_type, $entity_info, $form, $form_state, NULL, array('field_name' => $field));
$form['submit'][] = 'hook_custom_submit';
return $form; }
/** *
Implements hook_submit()
*/
function hook_custom_submit($form, $form_state)
{
$form_values = $form_state['values'];
$node = new stdClass();
$node->type = 'test';
$node->field_test_image = $form_values[‘field_test_image’];
node_save($node);
}
Hope this helps you to understand and resolve the problem. We are a Professional Web App Development Company, Feel free to contact us for any issues.