Создание дополнительных полей

Правила раздела: faq.php?mode=okay
Модератор: Модераторы

alekcandr
alekcandr
Репутация: 1
Сообщения: 11
Зарегистрирован: 25.12.2016
С нами: 7 лет 4 месяца

Сообщение #1 alekcandr » 22.01.2017, 04:43

Доброго времени суток, возникла потребность добавить дополнительные поля при оформлении заказа. Подскажите возможно это сделать стандартными средствами системы?

korshunov
korshunov
Репутация: 148
Сообщения: 1862
Зарегистрирован: 03.12.2015
С нами: 8 лет 4 месяца
Skype

Сообщение #2 korshunov » 22.01.2017, 06:44

Стандартных простых возможностей нет. Надо отдельно программировать - по аналогии с существующими полями...

kid
kid
Репутация: 0
Сообщения: 20
Зарегистрирован: 03.02.2017
С нами: 7 лет 2 месяца

Сообщение #3 kid » 10.02.2017, 08:50

У меня тоже возникла такая необходимость - нужно добавить 2 поля в оформлении заказа.
Если кто знает, подскажите, в каком модуле это нужно искать, связано ли с БД это?

m1hasik M
Аватара
m1hasik M
Возраст: 32
Репутация: 31
Сообщения: 200
Зарегистрирован: 12.11.2015
С нами: 8 лет 5 месяцев
Откуда: Днепр
Skype

Сообщение #4 m1hasik » 10.02.2017, 09:58

kid писал(а):У меня тоже возникла такая необходимость - нужно добавить 2 поля в оформлении заказа.
Если кто знает, подскажите, в каком модуле это нужно искать, связано ли с БД это?

В базу добавляете поле, в нужную таблицу.
Например если к пользователю надо добавить второй телефон, то в таблице s_users добавляете поле phone_2

Потом идете в файл api/Users.php
и в функциях get_user, get_users, там где идет выборка данных (SELECT), дописываете ваше поле, в примере это u.phone_2

Далее идем в шаблон, и добавляем в user.tpl поле
<input type='text' name="phone_2" value="" />

Обязательно name input называйте так, как поле в БД, так лучше для понимания

После этого, идем в view/UserView.php

и дописываете, там где принимается POST
вот такую строку

$user->phone_2 = $this->request->post('phone_2');

В принципе в клиентской части все

kid
kid
Репутация: 0
Сообщения: 20
Зарегистрирован: 03.02.2017
С нами: 7 лет 2 месяца

Сообщение #5 kid » 10.02.2017, 10:13

m1hasik, все кажется понятным, спасибо огромное. попробую.

m1hasik M
Аватара
m1hasik M
Возраст: 32
Репутация: 31
Сообщения: 200
Зарегистрирован: 12.11.2015
С нами: 8 лет 5 месяцев
Откуда: Днепр
Skype

Сообщение #6 m1hasik » 10.02.2017, 10:15

kid писал(а):m1hasik, все кажется понятным, спасибо огромное. попробую.
Если что пишите или сюда или в личку, подскажу детально, там не сложно в принципе все

korshunov
korshunov
Репутация: 148
Сообщения: 1862
Зарегистрирован: 03.12.2015
С нами: 8 лет 4 месяца
Skype

Сообщение #7 korshunov » 10.02.2017, 10:45

m1hasik писал(а):там не сложно в принципе все

Если в принципе, то не только "не сложно", а даже очень просто.
А если перейти от принципа к практике, то все становится совсем по другому.
Например, предложенное описание слабо соответствует поставленной задаче "добавить 2 поля в оформлении заказа". Даже скорее совсем не соответствует.

Добавление полей в оформление заказа требует значительно большего количества изменений. По моим прикидкам, в простейшем случае их должно быть не менее десятка. А если добавляемое поле связывать и с пользователем, то существенно больше...

По хорошему, эти поля надо бы в CMS настраивать из админки...

m1hasik M
Аватара
m1hasik M
Возраст: 32
Репутация: 31
Сообщения: 200
Зарегистрирован: 12.11.2015
С нами: 8 лет 5 месяцев
Откуда: Днепр
Skype

Сообщение #8 m1hasik » 10.02.2017, 10:49

korshunov писал(а):
m1hasik писал(а):там не сложно в принципе все

Если в принципе, то не только "не сложно", а даже очень просто.
А если перейти от принципа к практике, то все становится совсем по другому.
Например, предложенное описание слабо соответствует поставленной задаче "добавить 2 поля в оформлении заказа". Даже скорее совсем не соответствует.

Добавление полей в оформление заказа требует значительно большего количества изменений. По моим прикидкам, в простейшем случае их должно быть не менее десятка. А если добавляемое поле связывать и с пользователем, то существенно больше...

По хорошему, эти поля надо бы в CMS настраивать из админки...
Я показал принцип, а не полное выполнение задачи.
Насчет полей из админки, то снова таки, зачем нам второй битрикс, кто хочет таким руководить, не выбирает себе CMS по проще.
Понятно что добавив поле, нужно его и в админке вывести, и если инфа есть в емейлах, туда тоже ее подключить.

kid
kid
Репутация: 0
Сообщения: 20
Зарегистрирован: 03.02.2017
С нами: 7 лет 2 месяца

Сообщение #9 kid » 13.02.2017, 12:56

Да, принцип одно а сделать другое. Мне нужно добавить 1 поле с датой доставки товара. В БД какой тип поля установить? И возможно есть способ ввода даты в поле формы с календариком, средствами CMS? какой файл письма отправляет, как он meil формирует? вот завяз на первом шаге.


Название раздела: Вопросы по работе с OkayCMS
Правила раздела: faq.php?mode=okay

Быстрый ответ


Введите код в точности так, как вы его видите. Регистр символов не имеет значения.
Код подтверждения

   

Вернуться в «Вопросы по работе с OkayCMS»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 97 гостей