文档
如何启用插件?
购买 WPForms 推荐来源追踪插件后,您需要在 WordPress 网站上安装该插件。让我们一起来看看安装过程。.
步骤 1: 安装
登录您的 WordPress 网站,然后导航至“插件”>“添加插件”>“上传插件”>“安装 zip 文件”并激活它。.
第二步: 注册插件
在左侧导航栏中,导航至 WPForms > Referral Tracking。.
输入您的许可证密钥并激活。.
步骤 3: 启用该功能
激活许可证后,“推荐跟踪”设置页面中将出现“常规”选项卡,点击它,然后点击“保存更改”。.
搞定!现在,无论您创建现有表单还是新表单,推荐来源跟踪功能都将启用。.
功能详情
它检测到的来源
如果有引用网址,我们会将其捕获。 并将其存储在入口处。我们还为常用平台添加易于理解的标签,以便用户一目了然地了解来源。.
以下是检测到后会被标记的来源列表:
- 谷歌: Google Ads、Google 自然搜索、Gemini
- 微软/必应: 微软广告、必应自然搜索
- Facebook: Facebook广告,Facebook自然搜索
- LinkedIn: LinkedIn广告,LinkedIn自然搜索
- X(推特): X 广告,X 自然流量
- Reddit: Reddit广告,Reddit自然流量
- TikTok: TikTok广告,TikTok自然流量
- Pinterest: Pinterest 广告,Pinterest 自然流量
- Snapchat: Snapchat广告,Snapchat自然流量
- 其他搜索引擎: 雅虎、DuckDuckGo、Yandex
- 人工智能助手(如有): ChatGPT、Perplexity、Microsoft Copilot、Claude、Grok、DeepSeek
- 电子邮件平台(营销活动跟踪): Mailchimp、Constant Contact、Salesforce Pardot、HubSpot
- 直接的 和 未知 在适当的时候使用。.
- 风俗 还可以添加来源!
它捕获的UTM参数
utm_sourceutm_mediumutm_campaignutm_termutm_contentutm_id
已捕获的点击 ID
gclidgbraidwbraidmsclkidli_fat_idrdt_cidttclidpin_cidsnap_cidmc_cidmc_eiddclid
智能标签
{pb_ref_source} – 检测到的引荐来源标签(当无法对访问进行分类时,默认为“未知”)。.
{pb_ref_params} – 捕获到的完整引用参数字符串(UTM 和其他查询变量放在一起)。.
{pb_ref_referrer} – 将访客带到该网站的浏览器来源网址。.
{pb_ref_utm_id} 捕获 utm_id.
{pb_ref_utm_source} 捕获 utm_source.
{pb_ref_utm_medium} 捕获 utm_medium.
{pb_ref_utm_campaign} 捕获 utm_campaign.
{pb_ref_utm_term} 捕获 utm_term.
{pb_ref_utm_content} 捕获 utm_content.
{pb_ref_clid} – 检测到的第一个点击 ID(gclid、fbclid、msclkid 等)。.
翻译
此插件已完全支持翻译。您可以使用免费的翻译工具将其翻译成任何语言。 Loco 翻译 插件或任何其他 WordPress 翻译工具。.
默认语言:英语(en_US)
常见问题解答
它是否兼容 WPForms Lite?
是的。推荐跟踪捕获和智能标签处理功能与……兼容。 WPForms Lite. 然而,与 Pro 相比,WPForms Lite 的条目管理 UI 功能有限——条目列表列、单条目推荐跟踪侧边栏和 CSV 导出集成需要 WPForms Pro 才能实现。.
我可以导出数据吗?
是的。WPForms CSV 导出文件中包含跟踪值。所有引荐来源字段(来源、引荐网址、UTM 参数、点击 ID 等)都会自动添加为导出列。.
这个插件具体会捕获哪些内容?
我们会捕获常见的属性字段,并将它们与每个 WPForms 条目一起存储,包括 UTM参数 (来源、媒介、活动、术语、内容), 点击 ID (gclid、msclkid、gbraid/wbraid 等) 原始引用网址, 以及相关的着陆页内容,以便您清楚地了解每个潜在客户的来源。.
我可以添加自定义数据源吗?
是的!无论是推荐网站、联盟合作关系等等,您都可以添加带有清晰标签的自定义来源。.
推荐数据保存在哪里?
在您的 WordPress 数据库中,有一个专门的插件表,与 WPForms 表单条目关联。我们不会将转化数据或事件发送到广告平台。.
这是首次接触归因还是末次接触归因?
该插件专注于 首次接触归因 通过存储 原来的 将访客带到您网站的引荐来源和广告系列参数(在保留期内)。.
它会记住访客的归因数据多久?
保留窗口是 7天. 如果访客在首次跟踪访问后的 7 天内提交表单,则原始归因值将应用于该条目。.
它支持缓存/CDN吗?
通常情况下可以。跟踪操作在客户端运行,因此大多数缓存/CDN 配置都能正常工作。如果您使用了激进的脚本优化(压缩/延迟加载),请排除以下插件脚本并测试提交:
/wp-content/plugins/pb-wpforms-referral-tracking/assets/dist/js.cookie.min.js/wp-content/plugins/pb-wpforms-referral-tracking/assets/js/front-end.js
它是否兼容支持 AJAX 的 WPForms?
是的。它支持 AJAX 表单(WPForms 默认)和标准提交方式。.
我可以同时跟踪多个表单吗?
是的。它适用于您所有的 WPForms 表单——每次提交都会将自己的归属值保存到该条目中。.
这是否可以取代 GA4 / Google Ads 转化跟踪?
不。此插件不会触发像素或向 GA4 或广告平台发送转化事件。它只存储归因数据。 在 WPForms 条目内, 这样,您的团队就可以直接在 WordPress 和导出文件中查看潜在客户来源数据。.
它会收集个人数据吗?
默认情况下,它会捕获归因数据(UTM,, gclid, (,引荐来源网址)。确实如此。 不是 默认情况下会收集额外的个人身份信息 (PII)。您的表单字段和 URL 中包含的任何参数均由您的网站和营销设置控制。.
它是否符合GDPR/CCPA要求?
该插件可以以符合 GDPR/CCPA 规定的方式使用。它会将归因数据与您的条目一起存储,但不会将事件传输到广告平台。您有责任确保用户获得用户同意/符合合法权益,并针对您的具体设置进行适当的信息披露。.
它是否支持 WordPress 多站点网络?
太长不看
- 无限制许可: 启用一次网络模式;一个键即可管理 每一个 子站点设置 + 支持。.
- 网络激活: 所有子网站均运行推荐跟踪功能,并立即接收更新。.
- 有限套餐/无子站点许可: 跟踪功能保持开启,但子站点设置是只读的。.
- 支持服务遵循许可协议: 有效密钥覆盖范围内的站点均符合条件。.
是的;该插件在您通过网络激活后,即可在每个子站点上直接运行。无需手动设置。每个子站点都可以使用跟踪功能,即使没有本地许可证也能接收更新。要更改表单级设置或在子站点上获得直接支持,您仍然需要在该子站点上激活许可证。.
如果您拥有无限许可证,则可以从主站点启用网络模式,并将该密钥一次性推送至所有子站点(实时更新进度)。这些子站点将自动继承许可证管理的设置和支持。.
钩子
行动
pb_wpforms_referral_tracking_loaded
此事件在插件完全初始化后触发——所有类都已加载,钩子已注册,API 也已准备就绪。这是扩展 Referral Source Tracking 的附加组件或配套插件的可靠启动点。.
参数:
$plugin(插件) — 插件实例。.
add_action( 'pb_wpforms_referral_tracking_loaded', function( $plugin ) {
// Safe to interact with the plugin's classes and filters here.
// Example: register your own add-on after the plugin is ready.
if ( class_exists( 'MyReferralAddon' ) ) {
new MyReferralAddon( $plugin );
}
} );过滤器
pb_wpforms_referral_tracking_enabled
覆盖特定表单是否启用引荐来源跟踪。返回 true 强制启用跟踪,返回 false 强制禁用跟踪,无论表单的开关设置或全局默认值如何。.
参数:
$enabled(布尔值) — 当前是否启用跟踪功能。.$form_id(整数) — 当前表单的 ID。.$form_data(数组|null) — 表单数据数组,如果不可用则为 null。.
用法示例:
// Disable tracking on a specific form (e.g. an internal staff-only form).
add_filter( 'pb_wpforms_referral_tracking_enabled', function( $enabled, $form_id, $form_data ) {
$excluded_form_ids = [ 12, 27 ];
if ( in_array( $form_id, $excluded_form_ids, true ) ) {
return false;
}
return $enabled;
}, 10, 3 );pb_wpforms_referral_tracking_merge_tag_map
修改智能标签映射表,该映射表定义了哪些智能标签可用以及它们解析到哪些跟踪键。您可以使用此功能添加完全自定义的智能标签或重命名现有智能标签。.
参数:
$map(大批) — 标签 => 跟踪键的关联数组(例如).'pb_ref_source' => 'source').
用法示例:
// Add a custom Smart Tag that maps to a custom tracking key.
add_filter( 'pb_wpforms_referral_tracking_merge_tag_map', function( $map ) {
$map['pb_ref_landing_page'] = 'landing_page';
return $map;
} );pb_wpforms_referral_tracking_value
在通知或确认信息中用原始跟踪值替换智能标签之前,对其进行过滤。这对于清理或转换特定值非常有用。.
参数:
$value(细绳) — 原始跟踪值。.$tag(细绳) — 智能标签密钥(例如).pb_ref_source).$form_data(大批) — 表单数据数组。.$fields(大批) — 输入字段。.$entry_id(整数) — 条目 ID。.
用法示例:
// Truncate long referrer URLs in Smart Tag output.
add_filter( 'pb_wpforms_referral_tracking_value', function( $value, $tag, $form_data, $fields, $entry_id ) {
if ( $tag === 'pb_ref_referrer' && strlen( $value ) > 100 ) {
return substr( $value, 0, 100 ) . '…';
}
return $value;
}, 10, 5 );pb_wpforms_referral_tracking_formatted_value
处理完成后,筛选出格式完整的智能标签值。.
参数:
$formatted(细绳) — 格式化的输出字符串。.$tag(细绳) — 智能标签密钥。.$form_data(大批) — 表单数据数组。.$fields(大批) — 输入字段。.$entry_id(整数) — 条目 ID。.
// Wrap the source value in a bold tag in HTML notifications.
add_filter( 'pb_wpforms_referral_tracking_formatted_value', function( $formatted, $tag, $form_data, $fields, $entry_id ) {
if ( $tag === 'pb_ref_source' ) {
return '<strong>' . esc_html( $formatted ) . '</strong>';
}
return $formatted;
}, 10, 5 );pb_wpforms_referral_tracking_default_value
覆盖提交时跟踪字段为空时使用的备用值。默认值为“未知”。.
参数:
$default(细绳) — 当前默认值(“未知”)。.$key(细绳) — 上下文关键信息:source,referrer, , 或者front_end.
// Use "Direct" instead of "Unknown" for the source field fallback.
add_filter( 'pb_wpforms_referral_tracking_default_value', function( $default, $key ) {
if ( $key === 'source' ) {
return 'Direct';
}
return $default;
}, 10, 2 );pb_wpforms_referral_tracking_js_config
在将前端 JavaScript 配置对象传递给跟踪脚本之前,对其进行全面覆盖。这样,您就可以完全控制 Cookie 设置、来源检测模式、已知来源、付费媒体等等。.
参数:
$config(大批) — 完整的 JS 配置数组。.
// Extend cookie lifetime to 30 days and add a custom paid medium.
add_filter( 'pb_wpforms_referral_tracking_js_config', function( $config ) {
$config['cookieExpiry'] = 30;
// Add "social" as a paid medium indicator.
$config['paidMediums'][] = 'social';
// Add a custom source pattern for an internal platform.
$config['sourcePatterns']['custom_platforms'][] = [
'pattern' => 'myplatform\.com',
'name' => 'My Platform',
];
return $config;
} );pb_wpforms_referral_tracking_custom_sources
以编程方式注入自定义源规则,这些规则与管理界面中配置的规则并行运行。来自此过滤器的规则将与已保存的界面规则合并,并按优先级排序,然后再传递给前端。.
参数:
$sources(大批) — 空数组。返回要添加的规则数组的数组。.
每条规则必须包含: label, matchField (referrer, utm_source, utm_medium, utm_campaign, utm_term, utm_content), matchType (contains 或 equals), matchValue, ,并且(可选) priority (默认值为 10,数值越高运行越快)。.
// Add partner and affiliate sources without touching the admin UI.
add_filter( 'pb_wpforms_referral_tracking_custom_sources', function( $sources ) {
$sources[] = [
'label' => 'Partner: Acme Corp',
'matchField' => 'referrer',
'matchType' => 'contains',
'matchValue' => 'acme.com',
'priority' => 20,
];
$sources[] = [
'label' => 'Campaign: Spring Sale',
'matchField' => 'utm_campaign',
'matchType' => 'contains',
'matchValue' => 'spring-sale',
'priority' => 10,
];
return $sources;
} );pb_wpforms_referral_tracking_enqueue_assets
控制插件的前端资源(cookie 库和跟踪脚本)是否入队。返回 false 可完全禁用页面或特定条件下的加载。.
参数:
$enqueue(布尔值) — 是否将资源加入队列。默认值true.
// Disable tracking assets on the homepage only.
add_filter( 'pb_wpforms_referral_tracking_enqueue_assets', function( $enqueue ) {
if ( is_front_page() ) {
return false;
}
return $enqueue;
} );