International Phone Number Format
by Mohamed Endisha 5 (2 reviews)

International Phone Number Format

The International Phone Number Format plugin allows you to effortlessly format and validate international phone numbers within WooCommerce and WordPre …

International Phone Number Format ranks #10,068 among WordPress.org plugins with 400+ active installations, is #114 of 696 in the Language Tools category, a 5/5 rating from 2 reviews, and was last updated Nov 25, 2023. Data from WordPress.org, refreshed twice daily — see methodology.

Tested up to WP 6.3 (Current: 7.0.2)
v1.0.0 Current Version v1.0.0
Updated 2 years ago Last Update on 25 Nov, 2023
Refreshed 7 hours ago Last Refreshed on
#114 of 696 in Language Tools Top 25% by installs No update in over a year
View on WordPress.org
Rank
#10,068
-16 this week
Active Installs
400+
No change
KW Avg Position
77
No change
Downloads
2.7K
+2 today
Support Resolved
0%
No change
Rating
100%
Review 5 out of 5
5 (2 reviews)

Next Milestone 500

Total Progress 22%
400+ 500+
791
Ranks to Climb
-
Growth Needed
8,000,000
Active Installs
Pro

Unlock Exact Install Count

See the precise estimated active installs for this plugin, calculated from real-time ranking data.

  • Exact install estimates within tiers
  • Track install growth over time
  • Milestone progress predictions
Upgrade to Pro
Need 78 more installs to reach 500+

Rank Changes

10,029 10,040 10,051 10,062 10,073 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
10,019 10,033 10,047 10,060 10,074 13-07-2026 14-07-2026 15-07-2026 16-07-2026 17-07-2026 18-07-2026 19-07-2026 20-07-2026 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
9,982 10,006 10,031 10,055 10,079 28-06-2026 29-06-2026 30-06-2026 01-07-2026 02-07-2026 03-07-2026 04-07-2026 05-07-2026 06-07-2026 07-07-2026 08-07-2026 09-07-2026 10-07-2026 11-07-2026 12-07-2026 13-07-2026 14-07-2026 15-07-2026 16-07-2026 17-07-2026 18-07-2026 19-07-2026 20-07-2026 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
9,629 9,753 9,877 10,001 10,125 29-04-2026 30-04-2026 01-05-2026 02-05-2026 03-05-2026 04-05-2026 05-05-2026 06-05-2026 07-05-2026 08-05-2026 09-05-2026 10-05-2026 11-05-2026 12-05-2026 13-05-2026 14-05-2026 15-05-2026 16-05-2026 17-05-2026 18-05-2026 19-05-2026 20-05-2026 21-05-2026 22-05-2026 23-05-2026 24-05-2026 25-05-2026 26-05-2026 27-05-2026 28-05-2026 29-05-2026 30-05-2026 31-05-2026 01-06-2026 02-06-2026 03-06-2026 04-06-2026 05-06-2026 06-06-2026 07-06-2026 08-06-2026 09-06-2026 10-06-2026 11-06-2026 12-06-2026 13-06-2026 14-06-2026 15-06-2026 16-06-2026 17-06-2026 18-06-2026 19-06-2026 20-06-2026 21-06-2026 22-06-2026 23-06-2026 24-06-2026 25-06-2026 26-06-2026 27-06-2026 28-06-2026 29-06-2026 30-06-2026 01-07-2026 02-07-2026 03-07-2026 04-07-2026 05-07-2026 06-07-2026 07-07-2026 08-07-2026 09-07-2026 10-07-2026 11-07-2026 12-07-2026 13-07-2026 14-07-2026 15-07-2026 16-07-2026 17-07-2026 18-07-2026 19-07-2026 20-07-2026 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
Current #10,068
Change
Best #

Upgrade to Pro

Unlock 30-day and 90-day rank history charts with a Pro subscription.

Upgrade Now

Active Installs Growth

Active Installs 0,000,000+
Growth +0.0%
Peak 0,000,000

Downloads Growth

0 10 20 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
0 10 20 13-07-2026 14-07-2026 15-07-2026 16-07-2026 17-07-2026 18-07-2026 19-07-2026 20-07-2026 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
0 10 20 28-06-2026 29-06-2026 30-06-2026 01-07-2026 02-07-2026 03-07-2026 04-07-2026 05-07-2026 06-07-2026 07-07-2026 08-07-2026 09-07-2026 10-07-2026 11-07-2026 12-07-2026 13-07-2026 14-07-2026 15-07-2026 16-07-2026 17-07-2026 18-07-2026 19-07-2026 20-07-2026 21-07-2026 22-07-2026 23-07-2026 24-07-2026 25-07-2026 26-07-2026 27-07-2026 28-07-2026
0 10 20 30 40 29-04-2026 02-05-2026 05-05-2026 08-05-2026 11-05-2026 14-05-2026 17-05-2026 20-05-2026 23-05-2026 26-05-2026 29-05-2026 01-06-2026 04-06-2026 07-06-2026 10-06-2026 13-06-2026 16-06-2026 19-06-2026 22-06-2026 25-06-2026 28-06-2026 01-07-2026 04-07-2026 07-07-2026 10-07-2026 13-07-2026 16-07-2026 19-07-2026 22-07-2026 25-07-2026 28-07-2026
0 10 20 30 40 28-07-2025 09-08-2025 21-08-2025 02-09-2025 14-09-2025 26-09-2025 08-10-2025 20-10-2025 01-11-2025 13-11-2025 25-11-2025 07-12-2025 19-12-2025 31-12-2025 12-01-2026 24-01-2026 05-02-2026 17-02-2026 01-03-2026 13-03-2026 25-03-2026 06-04-2026 18-04-2026 30-04-2026 12-05-2026 24-05-2026 05-06-2026 17-06-2026 29-06-2026 11-07-2026 23-07-2026 28-07-2026
Downloads
Growth
Peak

Upgrade to Pro

Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.

Upgrade Now

Reviews & Ratings

5.0
2 reviews
Overall 100%
5
2 (100%)
4
0 (0%)
3
0 (0%)
2
0 (0%)
1
0 (0%)

Tracked Keywords

Showing 1 of 1
Keyword Position Change Type Updated
mask 77 Tag 1 day ago

Unlock Keyword Analytics

Track keyword rankings, search positions, and discover new ranking opportunities with a Pro subscription.

  • Full keyword position tracking
  • Historical ranking data
  • Competitor keyword analysis
Upgrade to Pro

Frequently Asked Questions

Common questions about International Phone Number Format

Once the plugin is activated, navigate to WooCommerce > Settings > International Phone Number Format tab in your WordPress admin dashboard.
Yes, you can add new fields using the intl_phone_number_format_fields filter.
Certainly. if you wish to add a Shipping Phone number field named shipping_phone to the checkout fields, it will be automatically formatted using the international phone number mask. If the field is set as required, it will undergo validation both in the frontend and backend as a valid number. Here's how you can achieve that: <?php add_filter('woocommerce_shipping_fields', function ($fields) { $fields['shipping_phone']['type'] = 'tel'; $fields['shipping_phone']['label'] = __('Shipping Phone Number', 'woocommerce'); $fields['shipping_phone']['class'] = array('form-row-wide'); $fields['shipping_phone']['required'] = false; return $fields; }, 10, 1);
Of course, let's say you want to add a "Mobile Phone Number" field to user account details in WooCommerce: Add the custom field using the intl_phone_number_format_fields filter. Here's an example code snippet: <?php add_filter('intl_phone_number_format_fields', function ($fields){ $fields[] = array( 'id' => 'mobile', 'enable' => true, 'desc' => 'Mobile phone number on the profile page', 'label' => 'Mobile', 'frontend_validation' => true, // JS frontend validation 'backend_validation' => true, // Backend validation 'countries' => 'all', // Countries related to fields (all, billing, or shipping) 'type' => 'custom', // Field type (custom, billing, or shipping) ); return $fields; }); Display the added field in the frontend "My Account" details section. Use the following code: <?php add_action('woocommerce_edit_account_form_start', function () { $user = wp_get_current_user(); ?> <p class="woocommerce-form-row woocommerce-form-row--wide form-row form-row-wide"> <label for="mobile"><?php _e('Mobile phone', 'woocommerce'); ?> <span class="required">*</span></label> <input type="text" class="woocommerce-Input woocommerce-Input--phone input-text" name="mobile" id="mobile" value="<?php echo esc_attr($user->mobile); ?>" /> </p> <?php }); Implement validation for the field. Use the woocommerce_save_account_details_errors action hook along with the intl validation service: <?php add_action('woocommerce_save_account_details_errors', function (WP_Error $errors) { $fields = (new IPNFP_Fields_Service)->get_fields(); $validated = (new IPNFP_Validate_Service)->validate($fields); if (!empty($validated)) { foreach ($validated as $field => $error) { $errors->add($field, $error); } } }, 10, 1); Save the user's input for the field: <?php add_action('woocommerce_save_account_details', function (int $user_id) { if (isset($_POST['mobile'])) { $mobile = sanitize_text_field($_POST['mobile']); update_user_meta($user_id, 'mobile', $mobile); } }, 10, 1); In case the JS file is not included, you can include it using: <?php add_filter('intl_phone_number_format_validate_enqueue_js', function ($valid){ if (is_account_page()) { $valid = true; } return $valid; }); By following these steps, the field should be included and formatted with the International Phone Number Format mask.
You have the flexibility to add custom validation using regular expressions for specific countries. If you need to enforce a specific format for phone numbers in a particular country, you can achieve this by the intl_phone_number_format_custom_country_prefixes_validation filter. Here's an example scenario: Let's assume you want to apply custom validation rules for Libyan phone numbers, allowing only a specific format. In this case, you can utilize the following filter to associate the country calling code with the regular expression pattern: <?php // The structure should follow this format: // 'calling code' => 'regular expression pattern' add_filter('intl_phone_number_format_custom_country_prefixes_validation', function ($patterns) { $patterns['+218'] = '^\+2189[1-6][0-9]{7}$'; return $patterns; });
The plugin provides several filters that allow you to modify the fields, including built-in fields such as billing_phone, _billing_phone, shipping_phone, and _shipping_phone, as well as custom fields that you added using intl_phone_number_format_fields filter. This filter allows you to enable or disable the field. intl_phone_number_format_modify_{FIELD}_enable This filter allows you to enable or disable JS frontend validation for the specified field. intl_phone_number_format_modify_{FIELD}_frontend_validation This filter to enable or disable backend validation for the specified field. intl_phone_number_format_modify_{FIELD}_backend_validation This filter to adjust the countries that will be shown as calling codes for the field. Accepted values are: all, billing, and shipping. intl_phone_number_format_modify_{FIELD}_countries This filter to define the field type. For example, if the field is related to billing, set it as billing. If it's for shipping, set it as shipping. Otherwise, set it as custom. intl_phone_number_format_modify_{FIELD}_type

Sign In / Register

You need to sign in or register to use this feature.