Hello, I have had an odd issue come up on a client’s site, and I’m racking my brain trying to figure out how it happened. So this client has HubSpot embedded forms on a few pages of their site, and I have some code that tracks where the user came from and passes that info into the iframe where the form resides to fill in some hidden fields.
For users that didn’t come from an adwords click, I use wixWindow.referrer to get the referrer url (or null if applicable). This seemed to be working fine, until the client emails me this morning and forwards me a form submission where the source field (a hidden field) was filled in with the url of a product page on the site ( https://www.usled.com/linearstar ). I was able to figure out from their analytics that this person actually came from organic search, so that field should have been filled in with ‘https://google.com’, which should have been the wixWindow.referrer value. As I understand wixWindow.referrer, I didn’t think it worked with page urls within a Wix site, so I don’t understand how this product page url got in there. I tried to replicate the issue but haven’t been able to. What am I missing?
Here is my code:
Site Code:
import {session} from ‘wix-storage’ ;
import wixLocation from ‘wix-location’ ;
import wixWindow from ‘wix-window’ ;
$w.onReady( function (){
let pageurl = wixLocation.url;
let query = wixLocation.query;
let referrer = wixWindow.referrer;
if (pageurl.indexOf( ‘utm_source=adwords’ ) !== - 1 ) {
//set session values for adwords
let campaign = query[ ‘utm_campaign’ ];
let term = query[ ‘utm_term’ ];
session.setItem( ‘utm_source’ , ‘adwords’ );
session.setItem( ‘utm_medium’ , ‘ppc’ );
session.setItem( ‘utm_campaign’ ,campaign);
session.setItem( ‘utm_term’ ,term);
}
else {
console.log( ‘referrer’ ,referrer);
if (session.getItem( ‘utm_source’ ) !== ‘adwords’ ) {
//set session values for everybody else
session.setItem( ‘utm_campaign’ , ‘none’ );
session.setItem( ‘utm_term’ , ‘none’ );
if (referrer !== **null** ) {
session.setItem( 'utm_source' , referrer);
}
**else** {
session.setItem( 'utm_source' , 'direct' );
}
console.log( 'source: ' +session.getItem( 'utm_source' ));
if (referrer === 'https://www.google.com/' ) {
session.setItem( 'utm_medium' , 'organic search (google)' )
}
**else if** (referrer === 'https://search.yahoo.com/' ) {
session.setItem( 'utm_medium' , 'organic search (yahoo)' )
}
**else if** (referrer === 'https://www.bing.com/' ) {
session.setItem( 'utm_medium' , 'organic search (bing)' )
}
**else if** (referrer.indexOf( 'facebook' ) !== - 1 ) {
session.setItem( 'utm_medium' , 'Facebook' );
}
**else if** (referrer.indexOf( 'linkedin' ) !== - 1 ) {
session.setItem( 'utm_medium' , 'LinkedIn' );
}
**else if** (referrer.indexOf( 'twitter' ) !== - 1 ) {
session.setItem( 'utm_medium' , 'Twitter' );
}
**else if** (referrer.indexOf( 'instagram' ) !== - 1 ) {
session.setItem( 'utm_medium' , 'Instagram' );
}
**else if** (referrer !== **null** ) {
session.setItem( 'utm_medium' , 'referral' );
}
**else** {
session.setItem( 'utm_medium' , 'none' );
}
}
}
});
Page Code on form page:
import {session} from ‘wix-storage’ ;
$w.onReady( function () {
let source;
let medium;
let campaign;
let searchterm;
if (session.getItem( “utm_source” ) !== null ) {
source = session.getItem( “utm_source” );
}
else {
source = ‘direct’ ;
}
console.log( 'utm_source: ’ +source);
if (session.getItem( “utm_medium” ) !== null ) {
medium = session.getItem( “utm_medium” );
}
else {
medium = ‘none’ ;
}
if (session.getItem( “utm_campaign” ) !== null ) {
campaign = session.getItem( “utm_campaign” );
}
else {
campaign = ‘none’ ;
}
if (session.getItem( “utm_term” ) !== null ) {
searchterm = session.getItem( “utm_term” );
}
else {
searchterm = ‘none’ ;
}
let sessionVars = { ‘utm_source’ :source, ‘utm_medium’ :medium, ‘utm_campaign’ :campaign, ‘utm_term’ :searchterm };
console.log(sessionVars);
$w( ‘#html2’ ).postMessage(sessionVars);
});