Frequently Asked Questions
Say, you want to collect phone numbers of new users via the Magento 2 registration form. For this, go to Stores > Setting > Configuration, open the Customers tab, and click Customer Configuration. Then, open the Name and Address Options section, find the Show Telephone field, and set it to Optional or Required.
But if you want the system to check what values are entered in this field and accept only numbers from 0 to 9, you need to enable the validation. Let’s see how to do it without coding.
1. For this, go to Stores > Attributes > Customer and click Add New Attribute.
2. Fill in Default Label and Attribute Code to identify the attribute on the frontend and in the admin panel.
3. Then choose the Input Type and specify if the value is required.
4. If needed, enter the Default Value.
5. In the Input Validation field, choose what kind of data should be entered. For example, for phone number validation, set this field to Numeric Only. Thus, Magento 2 will require subscribers to use numbers from 0 to 9 in this field.
6. Specify Minimum and Maximum Text Length, and set the Input/Output Filter.
7. Next, complete the Customers Grid and Segment Properties.
Choose Yes or No for the following fields:
8. In the Storefront Properties section, set Show on Storefront to Yes to display this attribute on the frontend.
9. Enter the Sort Order and choose forms, where you want to apply this field.
10. Then, go to the Manage Labels/Options tab and enter labels for all the store views.
11. Save the changes.
There’re no vanilla settings telephone validation in Magento 2 Open Source but you can add this functionality with this Customer Attributes extension. It validates not only telephone numbers but also:
Besides additional validation options, the extension has dependencies between attributes. You can display certain fields to specific customer groups only.