我想添加自己的正则表达式来验证电话号码.在我的class-wc-validation.PHP中,我已将正则表达式更改为我的要求.
public static function is_phone( $phone ) { //if ( strlen( trim( preg_replace( '/[\s\#0-9_\-\+\(\)]/','',$phone ) ) ) > 0 ) if ( strlen( trim( preg_replace( '/^[6789]\d{9}$/',$phone ) ) ) > 0 ) return false; return true; }
但验证没有发生.我错过了什么?
我还没有看到你的代码将这些内容挂钩到woocommerce结帐流程.
请查看他们的文档
请查看他们的文档
woocommerce_checkout_process和woocommerce_checkout_order_processed
但在你的情况下,我强烈建议你把它挂在woocommerce_checkout_process上
所以把这些代码放在你的主题的functions.PHP上,或者你创建自己的woocommerce插件,并把它放在bootstrap代码中.
add_action('woocommerce_checkout_process','is_phone'); function is_phone() { $phone_number = $_POST['---your-phone-field-name---']; // your function's body above,and if error,call this wc_add_notice wc_add_notice( __( 'Your phone number is wrong.' ),'error' ); }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。