You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WooCommerce如何通过账单手机号标记回头客并在后台订单列表显示

基于手机号识别回头客并标记的实现方案
  • 数据库层准备
    在订单数据表中新增一个字段,比如is_returning(布尔型)或者customer_label(字符串型),用来存回头客标记。布尔型就用true表示回头客、false表示新客;字符串型直接存“回头客”/“新客”就行。

  • 订单创建时的判断逻辑
    用户提交结账表单后,生成订单前做这几步:

    1. 提取表单里的账单手机号
    2. 查询数据库里有没有同手机号的已存在订单
    3. 只要有匹配记录,就把新订单的标记字段设为回头客;没有则设为新客
    4. 完成订单存储

    伪代码参考:

    // 获取提交的手机号
    $submitted_phone = $_POST['billing_phone'];
    // 统计同手机号的历史订单数量
    $history_count = DB::table('orders')->where('billing_phone', $submitted_phone)->count();
    // 判断并设置标记
    $returning_flag = $history_count > 0 ? true : false;
    // 写入新订单
    DB::table('orders')->insert([
        'billing_phone' => $submitted_phone,
        'is_returning' => $returning_flag,
        // 其他订单相关字段...
    ]);
    
  • 后台订单列表展示改造
    在后台订单管理页面的列表里加一列用来显示标记:

    1. 如果用布尔字段,对应行显示“回头客”(值为true)或“新客”(值为false)
    2. 给“回头客”加个醒目的样式,比如红底白字的标签,方便一眼识别
    3. 要是用字符串字段,直接读字段值展示就行
  • 关键优化:统一手机号格式
    避免因为手机号格式不同(比如带空格、短横线、区号)导致匹配出错,存手机号前先做标准化处理:

    • 移除所有非数字字符
    • 如果业务涉及多地区,统一加上对应区号
      示例代码:
    // 标准化手机号,只保留数字
    $standardized_phone = preg_replace('/\D/', '', $_POST['billing_phone']);
    

内容的提问来源于stack exchange,提问作者Faiz Ali

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 05:32:43