Перейти к содержанию

как работают настраиваемые / произвольные поля в Opencart

с помощью этих полей можно расширить стандартную форму заказа и добавить какие-то дополнительные данные о покупателе при его оформлении

есть возможность выбора групп покупателей, для которых будут доступны дополнительные поля

также возможно указать обязательность выбора / заполнения полей для указанных групп покупателей

 

создание таких полей доступно в админке в разделе Покупатели > Произвольные поля

при просмотре заказа в админке данные этих полей отображаются во вкладке История заказа > Дополнительно

при просмотре заказа в личном кабинете покупателю стандартно эти поля не видны, видны только в настройках самого аккаунта

 

доступны следующие виды полей

поля выбора:

✔ список (select)

✔ переключатель (radio)

✔ флажок (chekbox)

значения для полей выбора задаются заранее, покупатель выбирает из доступных вариантов и не может их изменить

 

поля ввода текста:

✔ текстовая строка (text)

✔ текстовая область (textarea)

можно задать начальные значения для таких полей (в виде примера), покупатель может изменить их на свои

 

поле в виде файла:

✔ возможность загрузки какого-то файла покупателем

штатно этот файл будет загружен в папку upload на сервере, при просмотре заказа в админке будут видны его название и контрольная сумма

 

поля даты и времени:

✔ только дата

✔ только время

✔ дата и время

можно задать начальные значения для таких полей (в виде примера), покупатель может изменить их на свои

 

доступны области размещения / привязки полей

аккаунт

адрес

логично, что первые заполняются в разделе данных о покупателе, а вторые на страницах адресов доставки / оплаты

 

плюсы:

возможность задать неограниченно количество полей для дополнительной информации админу о покупателе / заказе

данные поля сохраняются вместе с информацией о заказе в БД в таблице order, что позволяет видеть их админу при просмотре заказа, а также использовать их в работе сторонних модулей

в поле custom_field сохраняются данные привязанные к аккаунту

в полях payment_custom_field и shipping_custom_field сохраняются данные привязанные к адресу

 

нюансы:

учитывая произвольность полей и формат их хранения, сложно получать какие-то конкретные поля в рамках универсальных решений/модулей

чаще всего все поля будут выводится скопом, как это реализовано при просмотре данных заказа в админке

 

также, ввиду того что движок по сути дублирует информацию о адресах доставки/оплаты,

не рекомендуется создавать поля с привязкой к адресу, если они в адресах будут идентичны (особенно если поля обязательны к заполнению)

поля типа ИНН, номер счета и подобные лучше привязывать именно к аккаунту


Comments

Комментариев нет

Гость
Добавить комментарий...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...