I would like to start tracking form submissions with Google Analytics/Ads as Goals/Conversions. However it seems forms are currently dealt with in (at least) two different ways.
The built-in Contact and Footer Subscribe Button both seem to use in-line JS using jquery installed in the frappe.ready()
method, which calls the frappe.send_message
and erpnext.subscribe_to_newsletter
methods respectively.
The Web Forms all use the frappe.web_form framework. I have managed to get Google Tag Manager to recognise custom events on a single Web Form using the code below in the Client Script section of the doctype, but there doesn’t seem to be an obvious way of tracking form submissions across the whole site. Since the forms use JS, the normal HTML form submission tracking doesn’t get fired.
Am I missing something, is there a plan to make form submission consistent and trackable, and does anyone have any jquery code to install via frappe.ready
to track the built-in public forms in the Website Script section please?
The only other simple way I can see is to track <button>
element clicks.
frappe.web_form.after_save = () => {
dataLayer.push({'event':'FormSuccess'});
}
TIA!