中文
USD - $
联系支持 支持
KWIGA 帮助中心 服务、集成、API、设置 通用设置 项目中使用变量,可用变量列表

项目中使用变量,可用变量列表

文章:

本文解释了如何在项目中使用变量 — 变量适用于哪些地方、可用的数据有哪些,以及如何将其用于自动化和个性化。包括适用于电子邮件、Webhooks、按钮、课程等元素的变量列表、描述和示例。


在这篇文章中:


变量的基本信息

变量是将个性化数据插入到项目不同元素中的便捷方式。它们可以用于以下地方:

1. 自动化中的Webhook

变量可以插入:

  • 在 webhook URL 中,例如:
    https://example.com/hook?user={user.email}

  • 在请求体参数中

  • 在请求头中

这可以自动将个性化数据传递给第三方服务。

2. CTA(号召性用语)

在按钮和链接中可以使用变量来:

  • 个性化按钮文本

  • 通过链接传递数据,例如用户ID或UTM标签

3. 在参数中

变量可以用于表单或其他元素的参数中:

  • 用户email

  • 订阅ID

  • 唯一代码和标签

  • 在上下文中可用的任何其他变量

4. 在重定向链接中(如果不用于支付跳转)

可以手动在重定向链接中添加变量:

https://my.site.com/thanks?email={user.email}&course={course.title}

5. 在报价成功支付的重定向链接中

在报价成功支付后的重定向链接中,可以使用来自 contact.*、order.* 和 payment.* 块的变量

示例: https://my.site.com/success?order_id={order.id}&email={contact.email}&payment_price={payment.price}

5. 在课程信息块中

变量和条件块可在信息块文本中使用。例如:

  • 按名字称呼:你好,{user.first_name}!

  • 显示课程名称、日期、状态等。

  • 联系人数据:{contact.name}、{contact.email} 及其他字段

  • 当前课程的数据:{lesson.title}、{lesson.slug} 和其他课程字段

  • 条件块 @if/@endif:根据联系人是否有标签、是否有报价访问权限等显示不同内容。

6. 在邮件中

在邮件中使用变量可以让沟通更加个性化和高效。借助 {имя}、{дата} 或 {название курса} 等变量,邮件看起来就像是专门写给客户的一样。这能提升信任感、参与度,以及用户将邮件读完或完成所需操作的可能性。此外,变量还能简化群发邮件的自动化流程,同时不失个性化方式。

7. 在通知中

在自动化操作中设置通知时,变量允许动态插入信息到通知中,例如用户名、订单号或提案名称。这简化并加速了创建通知的过程,使其在不同场景下更直观和适应性更强。

可用变量列表

在所有可以使用变量的地方可用的变量列表。

变量
contact.id 联系人ID
contact.user_id 用户ID
contact.first_name 联系人名字
contact.last_name 联系人姓氏
contact.middle_name 联系人的父名
contact.name 联系人全名
contact.email 联系人Email
contact.phone 联系人电话
contact.country 联系人国家。例如:乌克兰
contact.timezone 联系人时区。例如:Europe/Kyiv
contact.currency 联系人货币。例如:USD
contact.city 联系人城市
contact.utm_source 联系人唯一utm_source列表(分隔符", ")
contact.utm_medium 联系人的唯一 utm_medium 列表(分隔符 ", ")
contact.utm_campaign 联系人的唯一 utm_campaign 列表(分隔符 ", ")
contact.utm_term 联系人的唯一 utm_term 列表(分隔符 ", ")
contact.utm_content 联系人的唯一 utm_content 列表(分隔符 ", ")
contact.field_<id> 自定义字段(描述如下)
datetime UTC 日期和时间格式 YYYY-MM-DD HH:mm:ss
contact.visit_source 访问来源
这些变量在报价成功支付的重定向链接中可用。

自定义字段

{contact.field_<id>}

示例 {contact.field_123}

<id> - 可以在联系人字段设置中获取的字段ID (示例 https://sampleschool.kwiga.com/expert/crm/contacts?view=settings)

Custom fields example

如何更改变量值

可以在变量后添加选项来改变其显示方式:添加文本、将字母转为大写,或格式化日期。

通用格式:{variable|option:value|option}。例如:{order.id|prefix:ORDER-}{payment.paid_at|format:DD.MM.YYYY}

您想得到什么 要写什么
在值前添加文本 {order.id|prefix:ORDER-} -> 结果为 ORDER-123
在值后添加文本 {order.id|suffix:-EU} -> 结果为 123-EU
将编号设为固定长度 {payment.number|pad:6} -> 结果为 000001
不用 0 填充,而使用自定义字符 {payment.number|pad:6|padchar:_} -> 结果为 _____1
将所有字母转为大写 {contact.city|upper} -> KYIV
将所有字母转为小写 {contact.city|lower} -> kyiv
仅将首字母大写 {contact.city|ucfirst} -> Kyiv
按所需格式显示日期 {payment.paid_at|format:DD.MM.YYYY} -> 结果为 24.12.2026
如果您想使用自定义日期模板,可以查看公开文档中的现成标记:对于 DD.MM.YYYYMMMM YYYYdddd 这类格式,可参考 Carbon 文档。对于 Y-m-dH:i:s 这类格式,可参考 PHP 官方文档
重要:如果使用了 pad,会先将值补齐到所需长度,然后才应用其他选项。

条件块 @if / @endif

可根据条件显示或隐藏部分文本。如果条件为真,则显示该块;否则将其完全移除。

语法:@if(条件)...文本...@endif

示例:
@if({contact.has|offer:123})获取资料访问权限@endif

@if() 中的条件是任何返回 truefalse 的变量。目前支持 {contact.has|...}(检查联系人归属)。

contact.has 条件——联系人检查

可用于检查联系人是否符合特定条件。返回 truefalse。通常与条件块 @if/@endif 一起使用。

语法:{contact.has|类型:值}

类型 说明
offer 报价 ID 联系人拥有该报价的访问权限
order 订单 ID 联系人有一个具有该 ID 的订单
product 产品 ID 联系人拥有该产品的访问权限
tag 标签 ID 或名称 联系人拥有该标签(支持西里尔字母和名称中的空格)
list 列表 ID 联系人属于该列表
course 课程 ID 联系人已报名该课程
marathon 课程 ID course 的别名(marathon 是 course 的子类型)
webinar 网络研讨会 ID 联系人拥有该网络研讨会的访问权限
closed_group 封闭群组 ID 联系人拥有该封闭群组的访问权限
可以通过 | 指定多个条件——它们必须同时满足(AND 逻辑)。例如:{contact.has|offer:123|tag:VIP}

使用示例:

{contact.has|offer:123} 检查是否存在 ID 为 123 的报价
{contact.has|tag:VIP} 按名称检查标签
{contact.has|tag:тест тег} 带空格和西里尔字母的标签
{contact.has|offer:123|tag:VIP} 两个条件同时满足(AND)

可以在CTA中额外使用的变量

  • 在参数中

  • 在重定向链接中(如果不用于支付跳转)

变量
first_name 申请中的名字
last_name 申请中的姓氏
middle_name 申请中的父名
name 申请中的全名
email 申请中的 Email
phone 申请中的电话
field_<id> 申请中的自定义字段 电话(如下描述)
utm_source utm_source - 提交申请时的具体访问
utm_medium utm_medium - 提交申请时的具体访问
utm_campaign utm_campaign - 提交申请时的具体访问
utm_term utm_term - 提交申请时的具体访问
utm_content utm_content - 提交申请时的具体访问
widget_landing 提交申请的着陆页 Url
widget_landign_referer 提交申请时着陆页的 Referer

在某些表单中,可能会提供以下描述的变量,这些变量在自动化Webhook中可用

按订单({order.*}) - 如果选择了产品访问表单选项(完全访问/按提议)

按产品({product.*}) - 如果选择了产品访问表单选项 + 完全访问

按提议({offer.*}) - 如果选择了产品访问表单选项 + 按提议

自定义字段

{field_<id>}

示例 {contact.field_123}

<id> - 可以在联系人字段设置中获取的字段ID (示例 https://sampleschool.kwiga.com/expert/crm/contacts?view=settings)

Custom fields example

如果在放置CTA或Kwiga脚本以跟踪访问的页面上有带utm标签的访问,并且客户在着陆页上提交了没有utm标签的请求,则这些变量中将不存在它们。但它们将在上面描述的{contact.utm_...}变量中可用。

自动化Webhook中可用的变量(url、参数、邮件)

可用变量列表

变量
referrer 联系人的首次已知访问的 Referrer(Kwiga / 带有 CTA 的着陆页)
initial_page 联系人的首次已知访问的 Url(Kwiga / 带有 CTA 的着陆页)
reg_from 注册页面的 Url(Kwiga / 带有 CTA 的着陆页)
tags 联系人的标签(分隔符 ", ")
description 触发自动化的事件描述。例如:已为联系人添加标签 test_tag

表单CTA变量

变量
cta.id 表单CTA ID
cta.uuid 表单CTA UUID
cta.title 表单CTA名称
cta_request.form_data 用户输入的数据列表(以换行符分隔)
列表可以扩展。

在以下事件触发时可用:

  • 申请 CTA

产品变量

变量
product.id 产品 ID
product.title 产品名称
product.productable_type 产品类型。可能的选项有:course, webinar, closed_group, custom_product
product.productable_id 课程/网络研讨会/封闭群组/自定义产品的 ID

在以下事件触发时可用:

  • 已开通产品访问权限
  • 产品访问权限已关闭
  • 已注册参加网络研讨会
  • 课程完成
  • 已完成测验
  • 取消了以前的测验结果
  • 测验状态更改
  • 订阅访问开始
  • 订阅访问结束
  • 开始观看课程
  • 看完了课程
  • 课程访问权限已打开
  • 课程实践已全部完成

订单变量

变量
order.id 订单 ID
order.price 最终价格。示例 10.99
order.currency_code 订单货币的代码格式。示例:USD
order.currency_symbol 订单货币的符号格式。示例:$
order.currency_short_title 订单货币的缩写名称。示例:usd
order.order_stage_id 漏斗状态 ID
order.order_stage_title 漏斗状态名称
order.funnel_id 漏斗 ID
order.funnel_title 漏斗名称
order.paid_status 订单支付状态 not_paid / partial_paid / paid
order.paid_status_title 英文支付状态
order.utm_source 订单的utm_source
order.utm_medium 订单的utm_medium
order.utm_campaign 订单的utm_campaign
order.utm_term 订单的utm_term
order.utm_content 订单的utm_content
order.next_scheduled_payment_at 下一次计划付款日期(适用于订阅和分期付款)。格式 YYYY-MM-DD HH:mm:ss
这些变量在报价成功支付的重定向链接中可用。
列表可以扩展。

在以下事件触发时可用:

  • 订阅已开始
  • 订阅已续订
  • 订单付款成功
  • 新订单
  • 优惠付款成功
  • 优惠付款失败
  • 优惠退款
  • 已开通产品访问权限
  • 订阅访问开始
  • 订阅访问结束

支付变量

变量
payment.id 支付 ID
payment.price 支付金额
payment.currency_code 支付货币的代码格式。示例:USD
payment.currency_symbol 支付货币的符号格式。示例:$
payment.currency_short_title 支付货币的缩写名称。示例:usd
payment.created_at 支付创建日期。格式 YYYY-MM-DD HH:mm:ss
payment.paid_at 支付日期。格式 YYYY-MM-DD HH:mm:ss
payment.schedule_payment_at 计划支付日期。格式 YYYY-MM-DD HH:mm:ss
payment.number 订单中的支付序号
这些变量在报价成功支付的重定向链接中可用。
列表可以扩展。

在以下事件触发时可用:

  • 优惠付款成功
  • 优惠付款失败
  • 优惠退款

优惠变量

变量
offer.id 提案 ID
offer.title 提案名称
列表可以扩展。

在以下事件触发时可用:

  • 优惠付款成功
  • 优惠付款失败
  • 优惠退款
  • 接受了免费优惠
  • 订阅已开始
  • 订阅已续订
  • 订单付款成功
  • 新订单
  • 已开通产品访问权限
  • 订阅访问开始
  • 订阅访问结束

产品订阅变量

变量
subscription.id 产品订阅ID
subscription.order_id 与产品订阅关联的订单 ID
subscription.start_at 订阅开始日期。YYYY-MM-DD HH:mm:ss
subscription.end_at 订阅最终结束日期。YYYY-MM-DD HH:mm:ss
subscription.order_end_at 仅考虑已支付款项的订阅结束日期。YYYY-MM-DD HH:mm:ss
subscription.paid_at 订阅首次付款日期。YYYY-MM-DD HH:mm:ss
列表可以扩展。

在以下事件触发时可用:

  • 已开通产品访问权限
  • 订阅访问开始
  • 订阅访问结束

测验尝试变量

变量
quiz_attempt.id 尝试ID
quiz_attempt.number_version 版本号
quiz_attempt.quiz_id 测验ID
quiz_attempt.course_id 课程ID
quiz_attempt.course_lesson_id 课程ID
quiz_attempt.status_id 状态ID
quiz_attempt.status 文本状态
quiz_attempt.scores 得分
quiz_attempt.created_at 尝试开始。格式 YYYY-MM-DD HH:mm:ss
quiz_attempt.finished_at 尝试结束。格式 YYYY-MM-DD HH:mm:ss
quiz_attempt.count_questions 测验中的问题数量
quiz_attempt.count_questions_incorrect 回答错误的问题数量
quiz_attempt.count_questions_correct 正确回答的问题数量
quiz.title 测验名称
列表可以扩展。

在以下事件触发时可用:

  • 已完成测验
  • 取消了以前的测验结果
  • 测验状态更改

课程变量

变量
lesson.id 课程ID
lesson.title 课程名称
lesson.slug 课程 URL 部分
列表可以扩展。

在以下事件触发时可用:

  • 已完成测验
  • 取消了以前的测验结果
  • 测验状态更改
  • 开始观看课程
  • 看完了课程
  • 课程访问权限已打开
  • 课程实践已全部完成