Добавить поле в оформление заказа с помощью плагина доставки
Вечер добрый!
Подскажите, пожалуйста, можно ли при установке плагина доставки автоматически создать новое поле в оформлении заказа? Допустим, добавить поле "Номер склада"? Перерыл весь форум и бесплатные плагины, ответ на вопрос так и не нашел.
Заранее спасибо!
11 ответов
чтоб пользователь выбрал на этапе доставки? можно
P.S. Прежде чем "рыть форум" и бесплатные плагины доставки, можно документацию почитать, например
Не подскажите каким образом?
Документацию так же перечитал, решение не нашел. Ткните, пожалуйста, ссылочкой?
Хотя нет. В доке это не описано.
Смотрите родительский класс waShipping на предмет метода customFields(). И в rquestedAddressFields() его укажите.
Предупреждаю сразу: установить его можно только из фронтенда. При оформлении или редактировании в бэкенде ничего не будет.
Спасибо за ответ. Это очень плохо, в бэкенде так же необходимо иметь данное поле.
Его потому и не использует никто кроме как разве для вывода карт каких-нибудь.
И в бэкенде при просмотре заказа будет показано ID поля, а не название.
Все собираюсь доработать это и вебассисту предложить, но руки не доходят
Хоть данное решение и не подходит мне, Вам, в любом случае, спасибо за ответ.
Я тут подумал, как вариант, можете попробовать вручную создать поле адреса "склад" в настройках, а в плагине его требовать в requestedAddressFields(). Может сработать.
Не факт, что при редактировании заказа в бэкенде оно будет, но чем черт не шутит :)
Да, так работает, уже пробовали. И при редактировании в бэкенде оно есть. Но вся проблема в том, что необходимо поле создать автоматически. Иначе придется объяснять незнающим людям, что необходимо предварительно вручную создать поле "склад".
Ну, в магазин такое не возмут, но для личного пользования или для клиента вполне можно сделать.
Создавать поле автоматом тоже можно. Вернее надо будет проверять его наличие и создавать при отсутствии.
Не подскажите в каком направлении двигаться? Спасибо
Именно поле адреса, не создавал. Создавал поле контакта. В плагине Магазина, при установке, отрабатывается скрипт install.php. В плагине доставки такого нет. Можно впихнуть проверку в метод, который вызывается перед показом настроек — getSettings() или initControls().
Вот так в плагине магазина в Install.php создавал поле контакта: