Форумы / National / Russian / Скины и дизайн / Добавить свой класс в поля формы плагина contact

jsman
#1 29.04.2016 23:01

Помогите разобраться в плагине contact. Никак не въеду.

Хочу в поля формы добавить ид и класс, как вообще это можно сделать? Хуком или как то иначе и как вывести форму на главной?

Leshkens
#2 04.05.2016 21:07

На главной вывести стандартный плагин Contact не получится.

Добавить класс можно либо создав экстраполе в плагине (и соответственно изменив HTML код экстраполя), либо с помощью массива $R.

jsman
#3 05.05.2016 04:42

А можно как то расширить хуком?

Roffun
#4 05.05.2016 10:23
#41628 jsman:

Помогите разобраться в плагине contact. Никак не въеду.

Хочу в поля формы добавить ид и класс, как вообще это можно сделать? Хуком или как то иначе и как вывести форму на главной?

Вариантов много, но все они подразумевают хорошее владение навыками работы с Cotonti. Но чтобы не лезть глубоко в код, можно ID и класс добавить с помощью JS или JQuery. 

Также можно вывести просто форму в таком виде, в каком она развернута в браузере, соблюдая атрибуты action name id и т. д. , но чтобы форма отправлялась, нужно передавать скрытое поле значение x={PHP.sys.xk} , почитайте тут и здесь.

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
Отредактировано: Roffun (29.06.2016 13:29, 7 лет назад)
jsman
#5 05.05.2016 13:51

При установке этого плагина выдает ошибку Cotonti 0.9.19

Fatal error

2016-05-05 04:51

SQL error 21S01: Insert value list does not match column list: 1136 Column count doesn't match value count at row 3 версия 5.3.29

Статус запущен

Но не работает

Roffun
#6 05.05.2016 15:05
#41648 jsman:

При установке этого плагина выдает ошибку Cotonti 0.9.19

Fatal error

2016-05-05 04:51

SQL error 21S01: Insert value list does not match column list: 1136 Column count doesn't match value count at row 3 версия 5.3.29

Статус запущен

Но не работает

Это уже вопрос к разработчику плагина, вижу вы уже написали автору на форуме.

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
Macik
#7 05.05.2016 20:13
#41628 jsman:

Помогите разобраться в плагине contact. Никак не въеду.

Хочу в поля формы добавить ид и класс, как вообще это можно сделать? Хуком или как то иначе и как вывести форму на главной?

 
На главной его без дорботак не вывести.
 
Что касается добавления атрибутов в поля ввода, то тов. Leshkens дал правильное направление — делается это через изменение данных в строковых ресурсах. Раскрою подробнее...
 
-------------------

Для этого у нас имеется штатный метод — во всех функциях генерации инпут полей есть схема определения исходной ресурсной строки.
Т.е. для примера, вызывая `cot_inputbox('text', 'rusername', $rusername, array('size' => '12', 'maxlength' => '100'))`
ф-я  `cot_inputbox` произведет поиск по ресурсам в таком порядке:

$R['input_text_rusername']
$R['input_text']
$R['input_default']

Т.е. можно определить шаблон `$R['input_text_rusername']` как тебе надо.

--------------------

К сожалению в коробочном плагине нет точек расширения (хуков), иначе можно было еще воспользоваться прямым изменением тегов, через функцию генерации полей:

'CONTACT_FORM_EMAIL' => cot_inputbox('text', 'remail', $rcontact['contact_email'], 'size="24" id="mail" class="cool"'),

— задав нужные атрибуты четвертым параметром, или переопределив всю ресурсную строку для генерации поля, указав ее имя в пятом параметре (`$custom_rc`). Если `$custom_rc`задан, то порядок будет следующим:

$R['input_text_rusername']
$R['users_auth_user']
$R['input_text']
$R['input_default']

 

https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F