Форматирование номеров телефонов в WooCommerce: функция WC_FORMAT_PHONE_NUMBER()

Форматирование номеров телефонов в WooCommerce

Функция WC_FORMAT_PHONE_NUMBER() позволяет форматировать номера телефонов в WooCommerce. Она не использует никаких хуков.

Возвращаемое значение

Функция возвращает строку, которая представляет собой отформатированный номер телефона.

Использование

Чтобы использовать функцию, вызовите её с необходимым номером телефона:

wc_format_phone_number( $phone );

Параметры

  • $phone (string, обязательный): номер телефона, который нужно отформатировать.

Примеры

Пример 1

Допустим, у нас есть номер телефона в формате 8.928.123.45.67. Мы можем отформатировать его следующим образом:

$phone = '8.928.123.45.67';
echo wc_format_phone_number( $phone ); // Вывод: 8-928-123-45-67

Код функции

Вот как выглядит реализация функции wc_format_phone_number:

function wc_format_phone_number( $phone ) {
$phone = $phone ?? '';

if ( ! WC_Validation::is_phone( $phone ) ) {
    return '';
}
return preg_replace( '/[^0-9+-()s]/', '-', preg_replace( '/[x00-x1Fx7F-xFF]/', '', $phone ) );

}

Как работает функция

  1. Проверка на пустоту: Если переменная $phone пуста, функция присваивает ей значение пустой строки.
  2. Валидация: Функция проверяет, является ли переданный номер телефона валидным с помощью метода WC_Validation::is_phone.
  3. Форматирование: Наконец, функция удаляет все символы, кроме цифр, плюс знаков, дефисов, скобок и пробелов, заменяя их на дефисы.

Связанные функции WooCommerce

Вот некоторые другие полезные функции, которые могут понадобиться при работе с WooCommerce:

  • get_woocommerce_currencies() — Получить валюты WooCommerce.
  • get_woocommerce_currency() — Получить валюту текущего магазина.
  • WC() — Получить объект WooCommerce.
  • wc_body_class() — Получить классы для тега <body>.
  • wc_clean() — Очистить данные для безопасного вывода.
  • wc_get_cart_url() — Получить URL корзины.
  • wc_get_checkout_url() — Получить URL страницы оформления заказа.

Эти функции помогут вам расширить функциональность вашего интернет-магазина на базе WooCommerce.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *