Как в hook_form_alter добавить к полям '#prefix' и '#suffix'?

Аватар пользователя Altron

Здравствуйте, собственно весь вопрос в теме, подскажите пожалуйста как добавить к полям '#prefix' и '#suffix' через hook_form_alter

Тип материала:
Версия Drupal:
0 Thanks

Комментарии

Аватар пользователя Altron
Altron 1 неделя назад

пробовал вот так не вышло

<?php
$form
['field_name']['#prefix'] = '<div id="nameid">';
$form['field_name']['#suffix'] = '</div>';
?>
Аватар пользователя sas@drupal.org
sas@drupal.org 1 неделя назад

Например

/**
 * Implements template_preprocess_field__FIELD_NAME().
 */

function MYTHEME_preprocess_field__MYFIELD(&$variables) {
  $variables['content']['#prefix'] = 'ny prefix';
}
Аватар пользователя Altron
Altron 1 неделя назад

Не совсем понял как это должно работать попробовал так

<?php
function ajax_login_form_form_alter(&$formFormStateInterface $form_state$form_id){
 
mymodule_preprocess_field_name($form);
}

function 

mymodule_preprocess_field_name(&$variables) {
  
$variables['nfield_name']['#prefix'] = 'ny prefix';
  return 
$variables['field_name'];
}
?>

не помогло

Аватар пользователя gun_dose
gun_dose 1 неделя назад

Возможно, вы не ту форму альтерите.

Аватар пользователя Altron
Altron 1 неделя назад

проверил этим

<?php
$form
['field_name']['#attributes'] = ['style' => 'background-color: #0a6fb4'];
?>

стиль применяется
а в случае

$form['field_name']['#prefix'] = '<div id="nameid">';
$form['field_name']['#suffix'] = '</div>';

оборачивает всю форму а не поле

Аватар пользователя sas@drupal.org
sas@drupal.org 1 неделя назад

Для поля оптимальней препроцессить = поле, чтобы помогло включите и посмотрите devel devel