php – WooCommerce结帐字段的自定义验证

栏目: PHP · 发布时间: 6年前

内容简介:翻译自:https://stackoverflow.com/questions/28603144/custom-validation-of-woocommerce-checkout-fields

我想添加自己的正则表达式来验证电话号码.在我的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' );
}

翻译自:https://stackoverflow.com/questions/28603144/custom-validation-of-woocommerce-checkout-fields


以上所述就是小编给大家介绍的《php – WooCommerce结帐字段的自定义验证》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

精通正则表达式

精通正则表达式

Jeffrey E. F. Friedl / 余晟 / 电子工业出版社 / 2007 / 75

随着互联网的迅速发展,几乎所有工具软件和程序语言都支持的正则表达式也变得越来越强大和易于使用。本书是讲解正则表达式的经典之作。本书主要讲解了正则表达式的特性和流派、匹配原理、优化原则、实用诀窍以及调校措施,并详细介绍了正则表达式在Perl、Java、.NET、PHP中的用法。 本书自第1 版开始着力于教会读者“以正则表达式来思考”,来让读者真正“精通”正则表达式。该版对PHP的相关内容、Ja......一起来看看 《精通正则表达式》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具