php - Woocommerce 结帐验证送货地址包含特定单词
问题描述
我在结账时使用谷歌地图让客户在地图上选择他们的位置。一旦他们找到他们的位置,送货地址就会自动填充。当他们找到他们的位置时,我想确保地址包含一个特定的单词来验证地址字段。我想确保填写的地址包含城市名称“Jeddah”或“jeddah”,因为我无法在该城市以外运送。
我尝试了下面的代码并进行了一些搜索,但我找不到答案,我发现的大部分内容是号码验证、URL 和电子邮件。
有人可以指导我完成这个。谢谢
此外,当该字段不包含 Jeddah 或 jeddah 时,如何将其设为“X”标记?因为它总是绿色的。
add_action( 'woocommerce_after_checkout_validation', 'validate_checkout', 10, 2);
function validate_checkout( $data, $errors ){
if ( strpos($data[ 'shipping_address_1' ] ,'/[Jeddah]/' ) ){
$errors->add( 'address', 'Sorry, we only provide shipping to Jeddah.' );
}
}
解决方案
推荐阅读
- java - 如何在 Gradle 中排除 JUnit 作为传递依赖
- c - C: 客户端程序报告 SSL Certificate verify failed 错误 with localCA
- python - 了解递归 canSum 函数
- android - 在模拟器上启动后立即反应本机应用程序崩溃
- haskell - 你如何构图_只用at镜头
- angular - 圈复杂度超过了定义的限制(成本'30')。你的模板应该被重构
- javascript - Node JS Webpack 构建失败
- python - Tkinter 中的 Entry.delete 未清除
- plyr - 使用 .m3u8 文件中的 HLS 将质量级别设置为 Plyr 播放器
- c# - 当元素是变量时创建json对象