=== Forms: 3rdparty Phone Numbers === Contributors: zaus Donate link: http://drzaus.com/donate Tags: contact form, 3rdparty services, API, phone number, parsing, international number Requires at least: 3.0 Tested up to: 4.5.3 Stable tag: trunk License: GPLv2 or later Forms: 3rdparty Integration add-on to parse phone numbers. == Description == An add-on to ['Forms: 3rdparty Integration'](https://wordpress.org/plugins/forms-3rdparty-integration/), it parses phone number fields from Contact Form submissions and exposes them to additional mapping. Uses the [PHP Port of Google's libphonenumber](https://github.com/giggsey/libphonenumber-for-php), which may be included via Composer instead -- see [GitHub version](https://github.com/zaus/f3i-phonenumber) instead. == Installation == 1. Unzip/upload plugin folder to your plugins directory (`/wp-content/plugins/`) 2. Make sure [Forms 3rdparty Integration](http://wordpress.org/plugins/forms-3rdparty-integration/) is installed and settings have been saved at least once. 3. Activate this plugin 4. Set the 'Phone number fields' option (fieldset may be collapsed by default) using URL-querystring format. You can provide one or more phone numbers separated by `&` symbols. You may specify the input format (per country) with `=country-code`. You may specify both the input format and output format with `=input-format,output-format`. You may use another submission field to define the format by prefixing that field name with `##`, e.g. `field_name=##another_field` Will parse and split up input phone number(s) and create additional 'submission' fields (which you can map against): * `FIELDNAME-CountryCode` = country code * `FIELDNAME-NationalNumber` = regional number (without country code) * `FIELDNAME-AreaCode` = regional code * `FIELDNAME-Subscriber` = local number (without area code) * `FIELDNAME-Extension` = telephone extension, if present * `FIELDNAME-NumberOfLeadingZeros` = how many zeros it would start with if it had them * `FIELDNAME-Out` = reformated phone number Example: to convert input phone-number "9195551234" in various fields: field_name&field2=US,2&field3=2,3&field4=##field5 * `field_name` from assumed format into standard international `+1 919-555-1234` * `field2` assuming US country code into standard regional `(919) 555-1234` * `field3` from international format (requires country code `+X`) into url style `tel:+1-919-555-1234` * `field4` from international format (requires country code `+X`) into a format defined by `field5` == Frequently Asked Questions == = It doesn't work right... = Drop an issue at https://github.com/zaus/f3i-phonenumber = Using field labels = Forms 3rdparty Integration makes some form plugin fields available by label as well as by id. There is a [quirk in parsing url-querystrings](http://php.net/manual/en/function.parse-str.php#76978) whereby spaces in keys are turned into underscores. As of v0.4.2 this plugin will check if the key should have had spaces, so that 'your label=fieldvalue' will turn into: * `your label-NationalNumber` * `your label-_etc_` = Formats = From [here](https://github.com/giggsey/libphonenumber-for-php/blob/master/src/libphonenumber/PhoneNumberFormat.php), among other places * *US* = United States * *CH* = Switzerland * _other iso country codes_ * *1* = (default) international format * *2* = national format * *3* = RFC3966 (url-format) == Screenshots == N/A. == Changelog == = 0.4.3 = * bump giggsey/libphonenumber to v7.6.1 to fix missing autoloader file = 0.4.2 = * addressing [spaces in url key quirk](http://php.net/manual/en/function.parse-str.php#76978) = 0.4 = * updated libphonenumber from v7.2.2 to v7.4.5 * including area code + subscriber number components = 0.3 = * use another submission field as the format = 0.2 = * support for input/output format = 0.1 = * started == Upgrade Notice == N/A.