We want to drive whitepaper downloads through social media and be able to collect email addresses, name, company etc. from a form that has to be filled out to gain access to the papers. Also, we do not want for it to be a URL that can be forwarded and give instant access to anyone who clicks, we want for anyone viewing the whitepapers to have filled out a contact form. IT should run similarly to this: Rapid Application Delivery Platform for the Enterprise | OutSystems
Hi Emily Stone , we all deal with this question, and it's best to address it in a way that's not a nuisance to users. A 403 access denied error usually means they'll just give up, rather than go out of their way to find your landing page and convert.
1 thing to always keep in mind, people will send your whitepaper (PDF, usually) to other people more often than they send a link to a landing page. That means you really want your PDF to end with a call to action directing interested readers to visit a web page with another piece of valuable content where some of them might convert.
I also ended up developing my own tool (product now), which tracks every page on our site being emailed or skyped. In practice, this means that someone emailing our whitepaper page to a coworker flags in my system as person A referring content X to person B. While I may not have person B in my Marketo database, that flow of information (referral of content to more appropriate person) is much more valuable to my sales team than just another name on the WP conversion campaign.
Hey there Fedja,
I am not wanting to display a 403 error; I was just looking for a way to require the form to be filled out for each new whitepaper DL / user.
Found the link to the original source: Advanced Marketo Form Techniques 2
You can also try this, courtesy of Jenna Molby's site somewhere:
Add this Javascript to the page:
MktoForms2.whenReady(function (form) {
form.onSuccess(function(values, followUpUrl) {
form.getFormElem().hide();
document.getElementById("successAndErrorMessages").innerHTML="YOUR THANK YOU MESSAGE HERE";
return false;
});
});
Then add the following somewhere on the landing page, where you want the thank you message to appear:
<div id="successAndErrorMessages"></div>
I'm not a JS wiz, but I'm pretty sure you can make that error message include the download link.
That means you have a landing page with a form, and the page is set to stay on page on-success. When the customer fills the form, the success thank you message appears, with a link to download. This means that if this page is shared, the new user lands on the "normal" landing page URL with a form.
The same-page Thank You approach is documented in a lot of places, for example at http://blog.teknkl.com/same-page-thank-you-text-with-marketo-forms-about-the-aliid/
But most users choose to use a standalone Thank You page, for example to fire a conversion pixel (which can also be done via JS, but many users lack the technical skill to implement this) or to use a template designed for this purpose. Thus the reason for this thread.
Hi Emily Stone , we all deal with this question, and it's best to address it in a way that's not a nuisance to users. A 403 access denied error usually means they'll just give up, rather than go out of their way to find your landing page and convert.
But who said anything about a 403?
I also ended up developing my own tool (product now), which tracks every page on our site being emailed or skyped. In practice, this means that someone emailing our whitepaper page to a coworker flags in my system as person A referring content X to person B.
"Person B" will be anonymous if you're not re-gating the content, so sounds like you're logging the out-of-band pageviews of a unique URL (i.e. a page that cannot exist in any other context but lead-specific Form → Thank You).
Person B will be anonymous (unless converted at another time). I'm just saying that for many of these forwards, we accepted the fact that any additional gating would just frustrate our users, particularly the ones who haven't themselves committed to digging up a piece of content.
This is why we're "settling" and simply tracking which one of our converted visitors sent some of our content to a colleague. Rather than having nothing, we get a point of interest to score and for sales to (possibly) follow up on.
There's a brief discussion here on how to prevent those that didn't register to have access to a confirmation/thank-you page: Block from accessing a Thank-You page/confirmation page directly
So from that it looks like there is no way to create a page that can only be accessed by filling out a form.. that’s disappointing
There's actually no such thing (anywhere on the web) as a page that [a] doesn't require pre-shared authentication, i.e. username and password or some kind of signature, yet [b] can't be accessed by someone who knows the full URL.
You can definitely prevent casual visitors from happening upon a Thank You page without filling out a form first: check to see if the referrer URL is the LP. But a malicious visitor can just forge their referrer... that's just browser reality.
Thank you for the info. I really appreciate the quick responses.. can you tell me the best way to get close to doing this… in layman’s terms
Also see this blog post I just put up: http://blog.teknkl.com/protecting-your-thank-you-download-pages-from-direct-viewing-by-newbies/
Since you probably only care about whether the referrer exists and is at one of your known domains (as opposed to really caring about the full referrer URL, since if someone is going to maliciously fake their referrer, they can fake the pagename part just as easily), you can put this <SCRIPT> in the <HEAD> of your Thank You page:
<script>
(function(){
var fallbackURL = 'http://www.example.com',
allowedReferrerHosts = ['pages.example.com','pages.someotherexample.com'],
referrerLoc = document.createElement('A');
if ( document.referrer ) { referrerLoc.href = document.referrer; };
if ( allowedReferrerHosts.indexOf(referrerLoc.hostname) == -1 ) { document.location.href = fallbackURL; };
})();
</script>
allowedReferrerHostnames is an array (think comma-delimited list, for your purposes) of the hostnames the person is allowed to come from, i.e. your LP domain(s).
If the lead comes from anywhere else, they are redirected to the fallbackURL.
Please move the thread to Products and someone will answer it there. "Community" is for website feedback, not product support -- and yes, this is confusing!