We sacrifice by not doing any other technology, so that you get the best of Magento.

We sacrifice by not doing any other technology, so that you get the best of Magento.

    Create setup file InstallData.php

    File: app/code/Magemonkeys/Customer/Setup/InstallData.php

    <?php
    
    namespace MagemonkeysCustomerSetup;
    
    use MagentoEavSetupEavSetup;
    use MagentoEavSetupEavSetupFactory;
    use MagentoFrameworkSetupInstallDataInterface;
    use MagentoFrameworkSetupModuleContextInterface;
    use MagentoFrameworkSetupModuleDataSetupInterface;
    use MagentoEavModelConfig;
    use MagentoCustomerModelCustomer;
    
    class InstallData implements InstallDataInterface
    {
    	private $eavSetupFactory;
    
    	public function __construct(EavSetupFactory $eavSetupFactory, Config $eavConfig)
    	{
    		$this->eavSetupFactory = $eavSetupFactory;
    		$this->eavConfig       = $eavConfig;
    	}
    
    	public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
    	{
    		$eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);
    		$eavSetup->addAttribute(
    			MagentoCustomerModelCustomer::ENTITY,
    			'sample_attribute',
    			[
    				'type'         => 'varchar',
    				'label'        => 'Sample Attribute',
    				'input'        => 'text',
    				'required'     => false,
    				'visible'      => true,
    				'user_defined' => true,
    				'position'     => 999,
    				'system'       => 0,
    			]
    		);
    		$sampleAttribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'sample_attribute');
    
    		// more used_in_forms ['adminhtml_checkout','adminhtml_customer','adminhtml_customer_address','customer_account_edit','customer_address_edit','customer_register_address']
    		$sampleAttribute->setData(
    			'used_in_forms',
    			['adminhtml_customer']
    
    		);
    		$sampleAttribute->save();
    	}
    }

    Run command line to install the module: php bin/magento setup:upgrade and php bin/magento setup:static-content:deploy

    Then check the result. It will show like this:

    field_5bfb909c5ccae

      Get a Free Quote