0

How to Disable This is a required field email in checkut page

2.

1 Answer 1

0

To do this you have to override this file in your theme -
vendor\magento\module-checkout\view\frontend\web\template\form\element\email.html

  1. Override this file in your theme under this folder Magento_Checkout\web\template\form\element\email.html and paste this below code in this file.
 <!--
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
-->
<!-- ko ifnot: isCustomerLoggedIn() -->

<!-- ko foreach: getRegion('before-login-form') -->
<!-- ko template: getTemplate() --><!-- /ko -->
<!-- /ko -->
<form class="form form-login" data-role="email-with-possible-login"
      data-bind="submit:login"
      method="post">
    <fieldset id="customer-email-fieldset" class="fieldset" data-bind="blockLoader: isLoading">
        <div class="field required">
            <label class="label" for="customer-email"><span data-bind="i18n: 'Email Address'"></span></label>
            <div class="control _with-tooltip">
                <input class="input-text"
                       type="email"
                       data-bind="
                            textInput: email,
                            hasFocus: emailFocused,
                            afterRender: emailHasChanged,
                            mageInit: {'mage/trim-input':{}}"
                       name="username"
                       data-validate="{'validate-email':true}"
                       id="customer-email" />
                <!-- ko template: 'ui/form/element/helper/tooltip' --><!-- /ko -->
                <span class="note" data-bind="fadeVisible: isPasswordVisible() == false"><!-- ko i18n: 'You can create an account after checkout.'--><!-- /ko --></span>
            </div>
        </div>

        <!--Hidden fields -->
        <fieldset class="fieldset hidden-fields" data-bind="fadeVisible: isPasswordVisible">
            <div class="field">
                <label class="label" for="customer-password"><span data-bind="i18n: 'Password'"></span></label>
                <div class="control">
                    <input class="input-text"
                           data-bind="
                                attr: {
                                    placeholder: $t('Password'),
                                }"
                           type="password"
                           name="password"
                           id="customer-password"
                           data-validate="{required:true}" autocomplete="off"/>
                    <span class="note" data-bind="i18n: 'You already have an account with us. Sign in or continue as guest.'"></span>
                </div>

            </div>
            <!-- ko foreach: getRegion('additional-login-form-fields') -->
            <!-- ko template: getTemplate() --><!-- /ko -->
            <!-- /ko -->
            <div class="actions-toolbar">
                <input name="context" type="hidden" value="checkout" />
                <div class="primary">
                    <button type="submit" class="action login primary" data-action="checkout-method-login"><span data-bind="i18n: 'Login'"></span></button>
                </div>
                <div class="secondary">
                    <a class="action remind" data-bind="attr: { href: forgotPasswordUrl }">
                        <span data-bind="i18n: 'Forgot Your Password?'"></span>
                    </a>
                </div>
            </div>
        </fieldset>
        <!--Hidden fields -->
    </fieldset>
</form>
<!-- /ko -->
  1. After run this commands
php bin/magento s:up
php bin/magento s:static-content:deploy -f
php bin/magento c:f

Result Screenshot for refernece - (https://prnt.sc/UP2oNHimZBRz) Now you have to remove the other validation as well

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.