bendasvadim

Добавление своих полей в форму заказа minishop2

В форме заказа добавляем свои поля с префиксов каким то например [ext]

Создаем плагин ExtraData и вешаем его на события msOnBeforeCreateOrder и msOnManagerCustomCssJs.

    
        
        switch ($modx->event->name) {
            case 'msOnBeforeCreateOrder':
                $address = $msOrder->getOne('Address');
                $properties = array();
                foreach ($_POST as $key => $value){
                    if (strpos($key,'ext_') !== false){
                        $properties[$key] = htmlentities($value,ENT_COMPAT | ENT_HTML401,'UTF-8');
                    }
                }
                if (count($properties) > 0){
                    $address->set('properties', json_encode($properties));    
                }
            break;
            
            case 'msOnManagerCustomCssJs':
                if ($page != 'orders') return;
        	    $modx->controller->addHtml("
                    ");
            break;
        }
    

Добавляем системную настройку "Поля адреса доставки" properties

Добавляем записи словарей: ms2_properties_ext_ИМЯ_ПОЛЯ

12 февраля 2020, 09:35    bendasvadim MODX Revolution 0    1481 0

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