Php 格式化WooCommerce帐户上的计费电话号码,以在代码和号码之间添加空格

Php 格式化WooCommerce帐户上的计费电话号码,以在代码和号码之间添加空格,php,woocommerce,format,Php,Woocommerce,Format,我想强制woocommerce注册字段上的电话号码为01234567890,而不是01234567890,因此在第5个号码后添加一个空格 我也需要同样的手机号码 我尝试了一些我以前找到并添加到functions.php文件中的答案,但要么不起作用,要么破坏了我的网站。如果你收到不同格式的数字,你可以开始替换所有非数字,然后在5位数字后加上空格。下面是一个函数示例: function formatPhoneNumber($phoneNumber){ $phoneNumber = preg_

我想强制woocommerce注册字段上的电话号码为01234567890,而不是01234567890,因此在第5个号码后添加一个空格

我也需要同样的手机号码


我尝试了一些我以前找到并添加到functions.php文件中的答案,但要么不起作用,要么破坏了我的网站。

如果你收到不同格式的数字,你可以开始替换所有非数字,然后在5位数字后加上空格。下面是一个函数示例:

function formatPhoneNumber($phoneNumber){
    $phoneNumber = preg_replace('/[^0-9]/', '', $phoneNumber); //Replacing non-digits.
    $phoneNumber = substr_replace($phoneNumber, ' ', 5, 0); //Adding space after 5 digits.
    return $phoneNumber;
}
试试代码

如果您想格式化输入字段,可以使用JavaScript,在本例中是使用与WordPress捆绑的jQuery

$("#formInput").keyup(function(){
  input = $("#formInput").val();
  input = input.replace(/\D/g, ''); //Replacing non digits
  if(input.length > 5){ //Adding space if string is larger than 5.
    input = [input.slice(0, 5), " ", input.slice(5)].join('');
  }
  $("#formInput").val(input);
})

尝试代码

你能发布你得到的代码吗?我使用了下面的代码,这是我能得到的最接近的代码,但没有效果。这太完美了-非常有用。非常感谢您的回答。好的,尝试了这个,但对我输入的电话号码没有影响?您是指用户输入电话号码的输入字段吗?在这种情况下,您必须在前端实现逻辑。我用一个解决方案更新了我的答案。这在你的例子中效果很好-正是我想要的。但是,如何将其添加到Wordpress中的子主题中。我通常会添加到函数文件中,但它是javascript。我可以在我的函数文件中使用它吗:add_action('wp_footer',function(){?>(function($){'use strict';$(document);