sách gpt4 ai đã đi

面向营销人员和 DMS 的 Sitecore Web 表单 - 不记录事件、目标和退出信息

In lại 作者:行者123 更新时间:2023-12-04 21:22:47 25 4
mua khóa gpt4 Nike

在 WFFM 中,有一个选项,当有人放弃表单时,在表单本身中输入的任何数据都会被记录下来,并且应该可以通过 Dropout Report 访问。

我有一个 WFFM,为此我打开了 Analytics 并打开了 dropout 功能。不幸的是,我没有看到任何数据记录在数据库中,并且 Dropout Report 可见,但为空。

我从 WFFM 文件夹中包含的 javascript 代码中看到,一系列 AJAX 调用应该保存模糊事件中的字段——调用/sitecore modules/web/Web Forms for Marketers/Tracking.aspx

我尝试调试 Javascript 代码,但从未调用过应该将信息发布到/sitecore modules/web/Web Forms for Marketers/Tracking.aspx 的方法。你能想到这段代码不起作用的任何原因吗?另外,有谁知道该信息应该记录在哪个表中?它是 WFFM 数据库中的字段表吗?

最后,即使我在这个特定的 WFFM 表单上打开了分析,并且我已经将事件和目标与表单的提交相关联,但这些都没有被记录下来。我看到表单中输入的数据已成功存储并显示在数据报告中,但数据库中没有记录有关事件和目标的信息。

我什至直接在运行的 DMS DB 中手动检查:

select top 10
p.DateTime, p.UrlText, cp.CampaignName
,i.Url, vi.VisitId
from pages p
inner join ItemUrls i on p.ItemId = i.ItemId
inner join Visits vi on vi.VisitId = p.VisitId
inner join GeoIps g on vi.Ip = g.Ip
left join Campaigns cp on cp.CampaignId = vi.CampaignId
order by p.DateTime desc

这表明正在点击呈现表单的页面,但没有事件与访问相关联。

然后我尝试了以下方法:
select pe.datetime, ped.Name, pg.UrlText from PageEvents pe
inner join PageEventDefinitions ped on ped.PageEventDefinitionId = pe.PageEventDefinitionId
inner join Pages pg on pg.PageId = pe.PageId
order by pe.DateTime desc

但我没有看到此特定事件或目标的任何条目(而我看到与非 WFFM Sitecore 项目相关的其他事件和目标的条目)

任何建议将不胜感激!

谢谢,

弗朗切斯科

biên tập

sc.webform.js 文件包含此方法:
_create: function () {
var self = this,
options = this.options;
if (options.tracking) {
this.element.find("input[type!='submit'], select, textarea")
.bind('focus', function (e) { self.onFocusField(e, this) })
.bind('blur change', function (e) { self.onBlurField(e, this) });

this.element.find("select")
.change(function () { $scw.webform.controls.updateAnalyticsListValue(this) });

this.element.find("input[type='checkbox'], input[type='radio']")
.click(function () { $scw.webform.controls.updateAnalyticsListValue(this) });
}

this.element.find(".scfDatePickerTextBox").each(function () { $scw.webform.controls.datePicker(this) });
},

这应该由 sc.webform 小部件初始化时的表单调用。它应该为所有输入字段、下拉列表和文本区域绑定(bind)焦点和模糊更改事件。不幸的是,当我试图在这个方法中放置一个断点时,它永远不会被调用。

第二次编辑

有趣的。我发现整个事情应该从嵌入在包含 WFFM 表单的页面中的这行 Javascript 代码开始:


一旦我在这里设置了一个断点,我终于能够追踪到 sc.webform.js 中定义的 jQuery.UI 小部件的 _create 方法。调用 _create 的代码实际上在 jQuery.UI 库中。有点道理,对吧?

最后是 里面的代码_创建执行时,模糊事件绑定(bind)到 跟踪事件方法,也在小部件中定义:
_trackEvents: function(events) {
$scw.ajax({
type: 'POST',
url: "/sitecore modules/web/Web Forms for Marketers/Tracking.aspx" + location.search,
data: {track: JSON.stringify(events)},
dataType: 'json'
});

现在没有意义的是,即使我终于可以看到 trackEvents 每当我在 WFFM 表单中从一个字段切换到另一个字段时都会被调用(为什么在这对我来说是个谜之前没有工作),我没有看到任何WFFM 数据库中记录的数据。我什至尝试在数据库中进行快速查询:
select f.Timestamp, f.StorageName, fi.Value, fi.FieldName 
from Form f
inner join Field fi on f.Id = fi.FormId
order by f.Timestamp desc, FieldName

有人知道 Tracking.aspx 应该在哪里保存捕获的字段信息吗?

1 Câu trả lời

问这个问题可能很愚蠢,但是您是否为 WFFM 正确配置了数据源?我的意思是,显然,您正在使用 WFFM ..但它是设置为使用 SQL 还是使用 WFFM 默认使用的"file"作为它的数据库。

像这样使用 SQL:

   


Database=Sitecore_WebForms;Data Source=xxx;user id=xxx;password=xxx;Connect Timeout=30






如果您没有正确配置,我想知道数据是否以某种方式记录在一个地方而不是另一个地方?另外,我要问的另一个问题是这是否是开发环境,您是否在实时模式下运行网络表单?在我看来,这是一个配置问题。

关于面向营销人员和 DMS 的 Sitecore Web 表单 - 不记录事件、目标和退出信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9195895/

25 4 0
Bài viết được đề xuất: php - 。=在此代码中如何工作?
Bài viết được đề xuất: Hỗ trợ LLVM OpenMP
Bài viết được đề xuất: sql查询记录一对二
Bài viết được đề xuất: 来自文件的 Antlr token
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com