Skip to main content

Populate Whatsapp Link Based on Seller Phone Number WCFM

Hi all,

Image from Pexels

Today I'm going to share, how to populate WhatsApp link based on the seller number.

My example today is based on Malaysia's phone number.

The registration input doesn't have an input validator for the phone number, however, these are the most common number registered by users.

1) starting with 6 at front
2) starting with +6 at front
3) normal number without country code eg : 014xxxxxx


Full code on how to populate whatsapp link for seller number

$malaysia_phone_patterns = "#(^[6]\w*$)|(^[+][6]\w*$)#";
$number = get_usermeta($post_author_id,'billing_phone');
preg_match($malaysia_phone_patterns, $number, $matches);
if ($matches) {
// full pattern of all.
//means one of the pattern is captured
if ($matches[0]) {
//do nothing.
}
// first pattern matches with 6 at start
if($matches[1]) {
//do nothing
}
if (count($matches)>2) {
// second pattern matches with +6 at start
if($matches[2]) {
//remove the '+' character!
$number=str_replace("+", "", $matches[2]);
}
}
} else {
//means no +6/6...so add 6 at front.
$number = "6".$number;
}
$whatsapp_number_link = "https://wa.me/".$number;
basically,

I introduced a simple pattern that has 2 groups.
"#(^[6]\w*$)|(^[+][6]\w*$)#";
The patterns must have a delimeter added for PHP, in my case i use a `#`. You can use other delimiter that supported by PHP.

The first pattern
(^[6]\w*$)
Checks whether the seller phone number starts with number 6 and followed with other characters. If it is matched, do nothing as the format is already correct.

The second pattern
(^[+][6]\w*$)
Checks whether the seller phone number starts with a character '+' and followed by 6 and other characters. If it is matched, replace the '+' with empty string. As Whatsapp API does'nt accept '+' character.

If the number does not match these two patterns, we will append 6 in front of the number.
else { $number = "6".$number; }
Why? because that is the number format understand by WhatsApp API~

Hit me some comments if you encountered any issues. I will try to help out!

Comments

Popular posts from this blog

Tutorial on Min3D framework using Android Studio

Salam peeps, UPDATES***, the model on the old link is no longer working. so i have create a github repo, where i put the source code in a project, you guys can try to clone in and run on your android studio device emulator or directly on your phone, Ive replaced the model with a cube. https://github.com/aliaramli/Min3DTutorial Previously i ve posted tutorial on min3D using eclipse IDE, i believe most of us has moved to Android Studio IDE in developing android apps? As previous tutorial shows a lot of support from readers and among hot post in my blog, i ve decided to post the same tutorial but this time using Android Studio. For those who are familiar with Eclipse/Android Studio migration they might not have problem in running this tutorial . For more detail explanation on min3D please visit this website page Ok lets get started. Step One Create a new android project in android studio. you may name it as what you like, below are how i defined my project settings. ...

Get the last active time from users in woocommerce using sql query

To easily get the last active time from users (under Woocommerce extended plugin) we can easily query from database using the meta_key of "wc_last_active" example query: select user_id, meta_value from wp_usermeta where meta_key= "wc_last_active" and user_id in (11111,112222); results: +-------------+------------------+ | user_id    | meta_value | +-------------+-------------------+ |   11111   | 1556755200 | |   112222 | 1566518400 |

AWS Workspace Device is not Authorized Linux Client

Have you guys tried the AWS Workspace? They are offering the service for free from April - June 2020. For a limited time, in response to COVID-19 , starting April 1, 2020 through June 30, 2020, Amazon WorkSpaces Free Tier provides up to 50 WorkSpaces with Windows Standard bundle with 80 GB Root and 50 GB User Volumes, running in AutoStop mode for up to 10,000 hours of combined use per month across all AWS Regions where WorkSpaces Free Tier is currently available. Additionally, the Amazon WorkSpaces Free Tier provides one WorkSpace with Windows Performance bundle with 80 GB Root and 100 GB User Volumes, running in AutoStop mode for up to 200 hours, two WorkSpaces with Linux Standard bundle with 80 GB Root and 50 GB User Volumes, running in AutoStop mode for up to 400 hours, and one WorkSpace with Windows Value bundle with 80 GB Root and 10 GB User Volume, running in AutoStop mode for up to 200 hours. All new customers that start using WorkSpaces for the first time during ...