├── README.md └── SR └── CheckoutAdditionalField ├── registration.php ├── etc ├── module.xml └── frontend │ └── di.xml ├── composer.json └── Plugin └── Checkout └── Model └── Checkout └── LayoutProcessor.php /README.md: -------------------------------------------------------------------------------- 1 | Setup step: 2 | 3 | 1. copy SR folder inside app/code 4 | 2. var folder permission should be 777 5 | 3. run following command 'php bin/magento setup:upgrade' 6 | 4. var folder permission should be 777 7 | -------------------------------------------------------------------------------- /SR/CheckoutAdditionalField/registration.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /SR/CheckoutAdditionalField/etc/frontend/di.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /SR/CheckoutAdditionalField/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "sr/module-checkoutadditionalfield", 3 | "description": "Checkout Additional Field", 4 | "require": { 5 | "php": "~5.5.0|~5.6.0|~7.0.0", 6 | "magento/framework": "100.0.*", 7 | "magento/module-ui": "100.0.*", 8 | "magento/module-config": "100.0.*", 9 | "magento/module-checkout": "100.0.*" 10 | }, 11 | "type": "magento2-module", 12 | "version": "100.0.0", 13 | "license": [ 14 | "OSL-3.0", 15 | "AFL-3.0" 16 | ], 17 | "autoload": { 18 | "files": [ "registration.php" ], 19 | "psr-4": { 20 | "SR\\CheckoutAdditionalField\\": "" 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /SR/CheckoutAdditionalField/Plugin/Checkout/Model/Checkout/LayoutProcessor.php: -------------------------------------------------------------------------------- 1 | 'Magento_Ui/js/form/element/abstract', 19 | 'config' => [ 20 | 'customScope' => 'shippingAddress', 21 | 'template' => 'ui/form/field', 22 | 'elementTmpl' => 'ui/form/element/date', 23 | 'options' => [], 24 | 'id' => 'delivery-date' 25 | ], 26 | 'dataScope' => 'shippingAddress.delivery_date', 27 | 'label' => 'Delivery Date', 28 | 'provider' => 'checkoutProvider', 29 | 'visible' => true, 30 | 'validation' => [], 31 | 'sortOrder' => 250, 32 | 'id' => 'delivery-date' 33 | ]; 34 | 35 | $jsLayout['components']['checkout']['children']['steps']['children']['shipping-step']['children'] 36 | ['shippingAddress']['children']['shipping-address-fieldset']['children']['drop_down'] = [ 37 | 'component' => 'Magento_Ui/js/form/element/select', 38 | 'config' => [ 39 | 'customScope' => 'shippingAddress', 40 | 'template' => 'ui/form/field', 41 | 'elementTmpl' => 'ui/form/element/select', 42 | 'id' => 'drop-down', 43 | ], 44 | 'dataScope' => 'shippingAddress.drop_down', 45 | 'label' => 'Drop Down', 46 | 'provider' => 'checkoutProvider', 47 | 'visible' => true, 48 | 'validation' => [], 49 | 'sortOrder' => 251, 50 | 'id' => 'drop-down', 51 | 'options' => [ 52 | [ 53 | 'value' => '', 54 | 'label' => 'Please Select', 55 | ], 56 | [ 57 | 'value' => '1', 58 | 'label' => 'First Option', 59 | ] 60 | ] 61 | ]; 62 | 63 | return $jsLayout; 64 | } 65 | } --------------------------------------------------------------------------------