дополнительные поля к Заказу miniShop2 Новый

Дополнение: miniShop2

Всем привет, появилась необходимость сделать дополнительные поля для заказа, нужные только на бэкенде,
то есть из фронта ничего в них не должно попадать, они заполняются по событию msOnCreateOrder данными со стороннего сервиса.
Но эти данные нужны менеджеру магазина, что бы при необходимости их взять прямо из окошка заказа в админке.
Нашёл интересное решение вот здесь — vr66.ru/it-blog/modx-revo/turnkey-solutions-for-modx/92-add-your-fields-in-the-order-form

Но здесь автор предлагает добавление полей с данными из фронта, БОГ с ним, пусть будут, на фронте их можно скрыть.
В окошке заказа в админке они реально появляются как отдельные поля — хотя это одно поле в базе данных в JSON формате.
Так вот, собственно, вопрос — как эти поля заполнить прямо из плагина?
Или может есть какое то более простое решение как сделать доп поле заказа и заполнить его из плагина?
28 ноября 2016, 17:40    Sem   G+  
3    521 0

Комментарии (1)

  1. Дмитрий Меркурьев 28 ноября 2016, 22:52 # 0
    В данном цикле идет перебор всех пришедших параметров из POST, если они содержат extfld_ то дописываются в массив $properties
    foreach ($_POST as $key => $value){
    	if (strpos($key,'extfld_') !== false){
    		$properties[$key] = htmlentities($value,ENT_COMPAT | ENT_HTML401,'UTF-8');
    	}
    }
    
    Если Вам не нужно принимать поля то вы просто можете добавить эти поля в массив с этом месте, убрав цикл и заменив на свой код
    $properties['extfld_first'] = 'Первое значение';
    $properties['extfld_second'] = 'Второе значение';
    
    Вы должны авторизоваться, чтобы оставлять комментарии.