Добавляем placeholder в формы webforms drupal 7 [html 5]

Что такое placeholder? єто новый атрибут поля для ввода  в html 5. Очень удобная штука однако.


Это поле имеет именно такой атрибут. 
В html это выглядит вот так:
<input type="text" class="form-text required" maxlength="128" size="60" value="" name="submitted[pole1]" id="edit-submitted-pole1" placeholder="Поле1">
Удобная штука. Теперь не нужно писать JavaScript.. ну вернее не нужно будет лет через 5)) 
Итак. Первым делом оприделимся, что мы будем менять способ вывода полей в модуле webform
Все "телодвижения" будут проходить в пределах файла webform-form.tpl.php, который следует скопировать из папки дополнения (чтобы весь не переписывать) в папку с вашей темой.
Приступим к редактированию. В файле есть несколько переменных, которые служат для вывода данных. Мы будем работать с $form['submitted'].
Изменим все поля c типом "textfield".
Добавим в самый верх:
foreach ($form["submitted"] as $key => $value) {
    if ("textfield" == $value["#type"]) {
        $form["submitted"][$key]['#attributes']["placeholder"] = t($value["#title"]);  // добавляем атрибут
       unset( $form["submitted"][$key]['#title']);  // скрываем заголовок
    } 
}
Для каждого поля в форме с типом textfield  устанавливаем атрибут со значением заголовка поля, после чего сам заголовок скрываем за не недобностью.
Остальные конструкции не трогаем. 
Получится должно примерно вот так: http://cyberpanks.ru/cont/obratnaya-svyaz.html

Просмотров:   8279