邮件模板里 customer.first_name 输出为空怎么办
现象#
订单确认邮件开头显示「Hi ,」,模板里写的是 {{ customer.first_name }},后台该顾客档案的 First name 明明填了内容。
原因#
- 姓名只写在收货地址里,顾客档案的 First name 字段是空的,两个字段并不互通
- 游客下单没有 customer 档案,模板里的 customer 为 nil,取任何属性都返回空字符串
- 模板直接输出变量没有兜底,空值时不会自动替换成通用称呼
- 用 Translate & Adapt 改过译文,变量名在翻译过程中被改掉或整段丢失
处理步骤#
- 在
Order confirmation模板里定位该行,确认变量是{{ customer.first_name }} - 改成
{{ customer.first_name | default: 'there' }},让空值有兜底输出 - 到 Customers 里筛 First name 为空的档案,批量补齐后再发测试邮件
- 用模板页的
Send test notification发给一个姓名为空的测试顾客 - 到 Translate & Adapt 检查该语言的模板译文是否还保留花括号里的变量
验收标准#
姓名为空的测试顾客收到「Hi there」,有名字的顾客收到「Hi 张三」,两封都不再出现孤零零的逗号。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。