customer
当前商店的 客户。当客户已登录帐户时,可以在全局范围内直接访问 customer 对象。它还在以下上下文中定义:
- 模板 customers/account
- 模板 customers/addresses
- 模板 customers/order
- 挂载到 checkout.customer
- 挂载到 gift_card.customer
- 挂载到 order.customer
在上述情况之外,如果客户未登录账号,则 customer 对象返回 null。
检查 customer 对象是否存在
在未确定存在 customer 对象的模板或对象中使用 customer 对象时,应该先判断 customer 对象是否存在。
{{#if customer }}
Hello, {{ customer.first_name }}!
{{/if}}
属性
客户是否订阅了电子邮件。
客户是否订阅了短信。
客户的所有个人收货地址。
返回客户所有个人收货地址,最多只能添加50条。
客户的个人收货地址数量。范围是0-50
客户是B2B客户返回 true,否则返回 false。
要了解B2B功能, 请参考 B2B公司。
客户可访问的公司地址列表。
要了解B2B功能, 请参考 B2B公司。
客户下单时使用的公司信息。
要了解B2B功能, 请参考 B2B公司。
客户下单时使用的公司地址。
要了解B2B功能, 请参考 B2B公司。
如果客户申请了删除账号返回 true,否则返回 false
客户账号将被删除的时间。
客户的默认个人收货地址。
客户的电子邮箱。为空时返回 null
客户的名字。
客户的姓氏。
客户绑定的第三方账号信息。
如果与客户关联的电子邮件与客户帐户绑定,则返回 true。 如果没有则返回 false。
顾客无需在商店开设账户即可完成结账。 如果客户没有商店帐户,则结帐时 customer.has_account 为 false。
在结帐过程中,如果客户拥有商店帐户并输入与帐户关联的电子邮件,则 customer.has_account 为 true。 无论客户是否登录其帐户,电子邮件都会与该帐户相关联。
客户的ID。
客户的名字。
客户下的订单列表。
默认显示最新10条数据,可以通过 paginate helper 调整分页大小。
客户的订单总数。
客户的手机号。为空时返回 null
客户的手机区号。
客户的标签列表。
如果客户免税返回 true,否则返回 false。
客户当前所有订单的总花费金额。 可以配合 money helper 格式化货币
已废弃属性
客户是否接受市场营销。
属性name不能明确表明客户接受了电子邮件订阅还是短信订阅。
使用 customer.accepts_email_marketing 和 customer.accepts_sms_marketing 替代。
Object示例
{
"accepts_marketing": true,
"addresses": [],
"addresses_count": 0,
"accepts_email_marketing": false,
"accepts_sms_marketing": false,
"b2b": false,
"cancelling_account": true,
"cancelling_time": "2024-12-31",
"company_available_locations": [],
"current_company": {},
"current_location": null,
"default_address": {},
"email": "cornelius.potionmaker@gmail.com",
"first_name": "Cornelius",
"has_account": true,
"id": 5625411010625,
"last_name": "Potionmaker",
"last_order": {},
"login_sources": [{
"login_source": "google",
"nickname": "your name"
}, {
"login_source": "facebook",
"nickname": "your name"
}],
"name": "Cornelius Potionmaker",
"orders": [],
"orders_count": 0,
"phone": "+441314960905",
"phone_dialing_code": "44",
"tags": [
"newsletter"
],
"tax_exempt": false,
"total_spent": "56.00",
}