Как добавить дополнительные поля в форму покупки в 1 клик?
Эта статья актуальна только для Аспро: Интернет-магазин! Статья для новых решений.
Инструкция:
Перейдите в список свойств заказа:Магазин → Настройки → Свойства заказа → Список свойств
В поле «Код» указаны коды свойств, которые вы можете вывести в форму регистрации для покупки в 1 клик и сделать обязательными – Ф.И.О., email, телефон, индекс, город, адрес доставки и т.д. Скопируйте код нужного поля.

Перейдите в ftp или файловый менеджер (Контент → Структура сайта → Файлы и папки/ajax) и найдите файлы:
one_click_buy_basket.php – форма покупки в 1 клик в корзине
one_click_buy.php – форма покупки в 1 клик в карточке товара
Откройте один из файлов как php.

Найдите строку, в которой задаются поля формы:
"PROPERTIES" => array( 0 => "FIO", 1 => "EMAIL", 2 => "PHONE", 3 => "COMMENT"),

Например, вы хотите добавить поле «Адрес доставки». В списке свойств ему соответствует символьный код ADDRESS. В этом случае фрагмент кода в файле примет вид:
"PROPERTIES" => array( 0 => "FIO", 1 => "EMAIL", 2 => "PHONE", 3 => "COMMENT", 4 => "ADDRESS"),Сохраните изменения и отредактируйте аналогичным образом второй файл, чтобы поля формы были одинаковыми и для корзины, и для карточки товара. Результат:
Как видим, у формы нет подписи. Ее нужно создать в шаблоне веб-формы. Для находим в структуре сайта файл template.php.
Путь к файлу:
-
Контент → Структура сайта → Файлы и папки/bitrix/templates/aspro_mshop/components/aspro/oneclickbuy.mshop/shop/lang/ru/template.php – для решения «Аспро: Маркет»
-
Контент → Структура сайта → Файлы и папки/bitrix/templates/aspro_kshop/components/aspro/oneclickbuy.kshop/shop/lang/ru/template.php – для решения «Аспро: Крутой шоп»
-
Контент → Структура сайта → Файлы и папки/bitrix/templates/aspro_ishop/components/aspro/oneclickbuy.ishop/shop/lang/ru/template.php – для решения «Аспро: Интернет-магазин»
Редактируем его как php. В нашем случае необходимо добавить строку
$MESS['CAPTION_ADDRESS'] = 'Адрес доставки';
Где:
- ADDRESS – символьный код
- Адрес доставки – подпись для поля формы.

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

Проверяем результат на сайте — у формы покупки в 1 клик появилось новое поле «Адрес доставки»:

Внимание! Информация с дополнительно подключенных полей форм не передается через систему почтовых уведомлений. Данные доступны в списке заказов вашего интернет-магазина.
Как сделать поля обязательными для заполнения, читайте здесь.
В файлах:
one_click_buy_basket.php
one_click_buy.php
Строка изменения параметров теперь выглядит вот так:
"PROPERTIES" => (strlen($tmp = COption::GetOptionString('aspro.next', 'ONECLICKBUY_PROPERTIES', 'FIO,PHONE,EMAIL,ADDRESS,COMMENT', SITE_ID)) ? explode(',', $tmp) : array()),Добавил поле ADDRESS. и ничего не появилось((
Пишу прям код сюда тогда:
$tmp = COption::GetOptionString('aspro.next', 'ONECLICKBUY_PROPERTIES', 'FIO,PHONE,EMAIL,COMMENT', SITE_ID);
$tmp = $tmp.',ADDRESS';
?>
<?$APPLICATION->IncludeComponent("aspro:oneclickbuy.next", "shop", array(
.......
"PROPERTIES" => (strlen($tmp) ? explode(',', $tmp) : array()),
.........
Спасибо за комментарий. Эта статья актуальна только для решения Аспро: Интернет-магазин. В новых решениях нужно добавить свойство заказа и выбрать необходимое поле в настройках решения.
Если у вас возникнут новые вопросы по типовым настройкам решения, пишите в нашу техподдержку:
Здравствуйте, Леонид!
Спасибо за вопрос. Свойство заказа «Адрес» имеет много строк
Если у вас активировано поле «Много строк», то свойство не будет выводиться, так как многострочные свойства не поддерживаются в покупке в 1 клик. Единственное многострочное свойство в покупке в 1 клик — поле «Комментарий к заказу». Свойство заказа «Адрес» будет выводиться только в однострочном варианте.
Если остались вопросы, напишите, пожалуйста, в техподдержкуНо вам стоило бы написать где-то об этом, в какой-нибудь статье, чтобы каждый, кто с этим столкнется, не писал в поддержку. Уж больно насущный вопрос.
У нас на сайте уже опубликована статья о том, как добавить дополнительные поля в форму покупки в 1 клик
Надеемся, она будет полезной. Следите за нашими новостями в блоге, чтобы не пропустить полезные статьи и выгодные акции
Можно ли выводить произвольный текст в форме? Если да то как?
А можно ли выводить произвольный текст в форме - Нашли дешевле? Если да то как?
Чтобы вывести произвольный текст в форме «Нашли дешевле», измените на странице формы в административной панели вкладку Описание. Процесс и результат показан в ссылках.
После сохранения изменений обязательно сбросьте кэш сайта.