how to add second field in registration form in magento 2












0















i added the one attribute using this code
but i try to



add another attribute is not working



why???



<?php
namespace IcoreModuleSetup;

use MagentoCustomerModelCustomer;
use MagentoFrameworkSetupModuleContextInterface;
use MagentoFrameworkSetupModuleDataSetupInterface;

class InstallData implements MagentoFrameworkSetupInstallDataInterface
{
private $eavSetupFactory;

private $eavConfig;

private $attributeResource;

public function __construct(
MagentoEavSetupEavSetupFactory $eavSetupFactory,
MagentoEavModelConfig $eavConfig,
MagentoCustomerModelResourceModelAttribute $attributeResource
) {
$this->eavSetupFactory = $eavSetupFactory;
$this->eavConfig = $eavConfig;
$this->attributeResource = $attributeResource;
}

public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
{
$eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

$eavSetup->removeAttribute(Customer::ENTITY, "skype");

$attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
$attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

$eavSetup->addAttribute(Customer::ENTITY, 'skype', [
// Attribute parameters
'type' => 'varchar',
'label' => 'Skype Account',
'input' => 'text',
'required' => false,
'visible' => true,
'user_defined' => true,
'sort_order' => 990,
'position' => 990,
'system' => 0,
]);

$attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'skype');

$attribute->setData('attribute_set_id', $attributeSetId);
$attribute->setData('attribute_group_id', $attributeGroupId);


$eavSetup->removeAttribute(Customer::ENTITY, "bussiness");
$attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
$attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

$eavSetup->addAttribute(Customer::ENTITY, 'bussiness', [
// Attribute parameters
'type' => 'varchar',
'label' => 'Check',
'input' => 'text',
'required' => false,
'visible' => true,
'user_defined' => true,
'sort_order' => 1000,
'position' => 1000,
'system' => 0,
]);

$attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'bussiness');
$attribute->setData('attribute_set_id', $attributeSetId);
$attribute->setData('attribute_group_id', $attributeGroupId);












/*
//You can use this attribute in the following forms
adminhtml_checkout
adminhtml_customer
adminhtml_customer_address
customer_account_create
customer_account_edit
customer_address_edit
customer_register_address
*/

$attribute->setData('used_in_forms', [
'adminhtml_customer',
'customer_account_create',
'customer_account_edit'
]);

$this->attributeResource->save($attribute);
}
}
?>


also added addtional.phtml
but not showing in registration form
magento 2 (Only showing "skype account")



<div class="field skype required">
<label class="label" for="skype">
<span><?= $block->escapeHtml(__('Skype Account')) ?></span>
</label>
<div class="control">
<input type="text" name="skype" id="skype" value="" title="<?= $block->escapeHtmlAttr(__('Skype Account')) ?>" class="input-text" data-validate="{required:false}">
</div>
</div>




<div class="field skype required">
<label class="label" for="skype2">
<span><?= $block->escapeHtml(__('Check')) ?></span>
</label>
<div class="control">
<input type="text" name="skype2" id="skype2" value="" title="<?= $block->escapeHtmlAttr(__('Check')) ?>" class="input-text" data-validate="{required:false}">
</div>
</div>

<div class="field tcagreecreateaccount required">
<div class="control">
<input type="checkbox" id="tcagreecreateaccount" name="tcagreecreateaccount" data-validate="{required:true}" class="input-checkbox checkbox required" value="1">
<label for="tcagreecreateaccount" class="label">
<?= __('Custom T&C') ?>
</label>
</div>
</div>


any idea's???









share



























    0















    i added the one attribute using this code
    but i try to



    add another attribute is not working



    why???



    <?php
    namespace IcoreModuleSetup;

    use MagentoCustomerModelCustomer;
    use MagentoFrameworkSetupModuleContextInterface;
    use MagentoFrameworkSetupModuleDataSetupInterface;

    class InstallData implements MagentoFrameworkSetupInstallDataInterface
    {
    private $eavSetupFactory;

    private $eavConfig;

    private $attributeResource;

    public function __construct(
    MagentoEavSetupEavSetupFactory $eavSetupFactory,
    MagentoEavModelConfig $eavConfig,
    MagentoCustomerModelResourceModelAttribute $attributeResource
    ) {
    $this->eavSetupFactory = $eavSetupFactory;
    $this->eavConfig = $eavConfig;
    $this->attributeResource = $attributeResource;
    }

    public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
    {
    $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

    $eavSetup->removeAttribute(Customer::ENTITY, "skype");

    $attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
    $attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

    $eavSetup->addAttribute(Customer::ENTITY, 'skype', [
    // Attribute parameters
    'type' => 'varchar',
    'label' => 'Skype Account',
    'input' => 'text',
    'required' => false,
    'visible' => true,
    'user_defined' => true,
    'sort_order' => 990,
    'position' => 990,
    'system' => 0,
    ]);

    $attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'skype');

    $attribute->setData('attribute_set_id', $attributeSetId);
    $attribute->setData('attribute_group_id', $attributeGroupId);


    $eavSetup->removeAttribute(Customer::ENTITY, "bussiness");
    $attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
    $attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

    $eavSetup->addAttribute(Customer::ENTITY, 'bussiness', [
    // Attribute parameters
    'type' => 'varchar',
    'label' => 'Check',
    'input' => 'text',
    'required' => false,
    'visible' => true,
    'user_defined' => true,
    'sort_order' => 1000,
    'position' => 1000,
    'system' => 0,
    ]);

    $attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'bussiness');
    $attribute->setData('attribute_set_id', $attributeSetId);
    $attribute->setData('attribute_group_id', $attributeGroupId);












    /*
    //You can use this attribute in the following forms
    adminhtml_checkout
    adminhtml_customer
    adminhtml_customer_address
    customer_account_create
    customer_account_edit
    customer_address_edit
    customer_register_address
    */

    $attribute->setData('used_in_forms', [
    'adminhtml_customer',
    'customer_account_create',
    'customer_account_edit'
    ]);

    $this->attributeResource->save($attribute);
    }
    }
    ?>


    also added addtional.phtml
    but not showing in registration form
    magento 2 (Only showing "skype account")



    <div class="field skype required">
    <label class="label" for="skype">
    <span><?= $block->escapeHtml(__('Skype Account')) ?></span>
    </label>
    <div class="control">
    <input type="text" name="skype" id="skype" value="" title="<?= $block->escapeHtmlAttr(__('Skype Account')) ?>" class="input-text" data-validate="{required:false}">
    </div>
    </div>




    <div class="field skype required">
    <label class="label" for="skype2">
    <span><?= $block->escapeHtml(__('Check')) ?></span>
    </label>
    <div class="control">
    <input type="text" name="skype2" id="skype2" value="" title="<?= $block->escapeHtmlAttr(__('Check')) ?>" class="input-text" data-validate="{required:false}">
    </div>
    </div>

    <div class="field tcagreecreateaccount required">
    <div class="control">
    <input type="checkbox" id="tcagreecreateaccount" name="tcagreecreateaccount" data-validate="{required:true}" class="input-checkbox checkbox required" value="1">
    <label for="tcagreecreateaccount" class="label">
    <?= __('Custom T&C') ?>
    </label>
    </div>
    </div>


    any idea's???









    share

























      0












      0








      0








      i added the one attribute using this code
      but i try to



      add another attribute is not working



      why???



      <?php
      namespace IcoreModuleSetup;

      use MagentoCustomerModelCustomer;
      use MagentoFrameworkSetupModuleContextInterface;
      use MagentoFrameworkSetupModuleDataSetupInterface;

      class InstallData implements MagentoFrameworkSetupInstallDataInterface
      {
      private $eavSetupFactory;

      private $eavConfig;

      private $attributeResource;

      public function __construct(
      MagentoEavSetupEavSetupFactory $eavSetupFactory,
      MagentoEavModelConfig $eavConfig,
      MagentoCustomerModelResourceModelAttribute $attributeResource
      ) {
      $this->eavSetupFactory = $eavSetupFactory;
      $this->eavConfig = $eavConfig;
      $this->attributeResource = $attributeResource;
      }

      public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
      {
      $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

      $eavSetup->removeAttribute(Customer::ENTITY, "skype");

      $attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
      $attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

      $eavSetup->addAttribute(Customer::ENTITY, 'skype', [
      // Attribute parameters
      'type' => 'varchar',
      'label' => 'Skype Account',
      'input' => 'text',
      'required' => false,
      'visible' => true,
      'user_defined' => true,
      'sort_order' => 990,
      'position' => 990,
      'system' => 0,
      ]);

      $attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'skype');

      $attribute->setData('attribute_set_id', $attributeSetId);
      $attribute->setData('attribute_group_id', $attributeGroupId);


      $eavSetup->removeAttribute(Customer::ENTITY, "bussiness");
      $attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
      $attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

      $eavSetup->addAttribute(Customer::ENTITY, 'bussiness', [
      // Attribute parameters
      'type' => 'varchar',
      'label' => 'Check',
      'input' => 'text',
      'required' => false,
      'visible' => true,
      'user_defined' => true,
      'sort_order' => 1000,
      'position' => 1000,
      'system' => 0,
      ]);

      $attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'bussiness');
      $attribute->setData('attribute_set_id', $attributeSetId);
      $attribute->setData('attribute_group_id', $attributeGroupId);












      /*
      //You can use this attribute in the following forms
      adminhtml_checkout
      adminhtml_customer
      adminhtml_customer_address
      customer_account_create
      customer_account_edit
      customer_address_edit
      customer_register_address
      */

      $attribute->setData('used_in_forms', [
      'adminhtml_customer',
      'customer_account_create',
      'customer_account_edit'
      ]);

      $this->attributeResource->save($attribute);
      }
      }
      ?>


      also added addtional.phtml
      but not showing in registration form
      magento 2 (Only showing "skype account")



      <div class="field skype required">
      <label class="label" for="skype">
      <span><?= $block->escapeHtml(__('Skype Account')) ?></span>
      </label>
      <div class="control">
      <input type="text" name="skype" id="skype" value="" title="<?= $block->escapeHtmlAttr(__('Skype Account')) ?>" class="input-text" data-validate="{required:false}">
      </div>
      </div>




      <div class="field skype required">
      <label class="label" for="skype2">
      <span><?= $block->escapeHtml(__('Check')) ?></span>
      </label>
      <div class="control">
      <input type="text" name="skype2" id="skype2" value="" title="<?= $block->escapeHtmlAttr(__('Check')) ?>" class="input-text" data-validate="{required:false}">
      </div>
      </div>

      <div class="field tcagreecreateaccount required">
      <div class="control">
      <input type="checkbox" id="tcagreecreateaccount" name="tcagreecreateaccount" data-validate="{required:true}" class="input-checkbox checkbox required" value="1">
      <label for="tcagreecreateaccount" class="label">
      <?= __('Custom T&C') ?>
      </label>
      </div>
      </div>


      any idea's???









      share














      i added the one attribute using this code
      but i try to



      add another attribute is not working



      why???



      <?php
      namespace IcoreModuleSetup;

      use MagentoCustomerModelCustomer;
      use MagentoFrameworkSetupModuleContextInterface;
      use MagentoFrameworkSetupModuleDataSetupInterface;

      class InstallData implements MagentoFrameworkSetupInstallDataInterface
      {
      private $eavSetupFactory;

      private $eavConfig;

      private $attributeResource;

      public function __construct(
      MagentoEavSetupEavSetupFactory $eavSetupFactory,
      MagentoEavModelConfig $eavConfig,
      MagentoCustomerModelResourceModelAttribute $attributeResource
      ) {
      $this->eavSetupFactory = $eavSetupFactory;
      $this->eavConfig = $eavConfig;
      $this->attributeResource = $attributeResource;
      }

      public function install(ModuleDataSetupInterface $setup, ModuleContextInterface $context)
      {
      $eavSetup = $this->eavSetupFactory->create(['setup' => $setup]);

      $eavSetup->removeAttribute(Customer::ENTITY, "skype");

      $attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
      $attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

      $eavSetup->addAttribute(Customer::ENTITY, 'skype', [
      // Attribute parameters
      'type' => 'varchar',
      'label' => 'Skype Account',
      'input' => 'text',
      'required' => false,
      'visible' => true,
      'user_defined' => true,
      'sort_order' => 990,
      'position' => 990,
      'system' => 0,
      ]);

      $attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'skype');

      $attribute->setData('attribute_set_id', $attributeSetId);
      $attribute->setData('attribute_group_id', $attributeGroupId);


      $eavSetup->removeAttribute(Customer::ENTITY, "bussiness");
      $attributeSetId = $eavSetup->getDefaultAttributeSetId(Customer::ENTITY);
      $attributeGroupId = $eavSetup->getDefaultAttributeGroupId(Customer::ENTITY);

      $eavSetup->addAttribute(Customer::ENTITY, 'bussiness', [
      // Attribute parameters
      'type' => 'varchar',
      'label' => 'Check',
      'input' => 'text',
      'required' => false,
      'visible' => true,
      'user_defined' => true,
      'sort_order' => 1000,
      'position' => 1000,
      'system' => 0,
      ]);

      $attribute = $this->eavConfig->getAttribute(Customer::ENTITY, 'bussiness');
      $attribute->setData('attribute_set_id', $attributeSetId);
      $attribute->setData('attribute_group_id', $attributeGroupId);












      /*
      //You can use this attribute in the following forms
      adminhtml_checkout
      adminhtml_customer
      adminhtml_customer_address
      customer_account_create
      customer_account_edit
      customer_address_edit
      customer_register_address
      */

      $attribute->setData('used_in_forms', [
      'adminhtml_customer',
      'customer_account_create',
      'customer_account_edit'
      ]);

      $this->attributeResource->save($attribute);
      }
      }
      ?>


      also added addtional.phtml
      but not showing in registration form
      magento 2 (Only showing "skype account")



      <div class="field skype required">
      <label class="label" for="skype">
      <span><?= $block->escapeHtml(__('Skype Account')) ?></span>
      </label>
      <div class="control">
      <input type="text" name="skype" id="skype" value="" title="<?= $block->escapeHtmlAttr(__('Skype Account')) ?>" class="input-text" data-validate="{required:false}">
      </div>
      </div>




      <div class="field skype required">
      <label class="label" for="skype2">
      <span><?= $block->escapeHtml(__('Check')) ?></span>
      </label>
      <div class="control">
      <input type="text" name="skype2" id="skype2" value="" title="<?= $block->escapeHtmlAttr(__('Check')) ?>" class="input-text" data-validate="{required:false}">
      </div>
      </div>

      <div class="field tcagreecreateaccount required">
      <div class="control">
      <input type="checkbox" id="tcagreecreateaccount" name="tcagreecreateaccount" data-validate="{required:true}" class="input-checkbox checkbox required" value="1">
      <label for="tcagreecreateaccount" class="label">
      <?= __('Custom T&C') ?>
      </label>
      </div>
      </div>


      any idea's???







      magento2 customer-attribute custom-field installdata customer-registration





      share












      share










      share



      share










      asked 6 mins ago









      prabhakaran7prabhakaran7

      1629




      1629






















          0






          active

          oldest

          votes











          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "479"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f266153%2fhow-to-add-second-field-in-registration-form-in-magento-2%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Magento Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f266153%2fhow-to-add-second-field-in-registration-form-in-magento-2%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          What other Star Trek series did the main TNG cast show up in?

          Berlina muro

          Berlina aerponto