How to Make a Squeeze Page Using the WordPress eStore Plugin

You can use the WordPress eStore plugin to make squeeze page type pages to collect emails and build a list for email marketing. According to Wikipedia – “Squeeze pages are landing pages created to solicit opt-in email addresses from prospective subscribers”.

Why Should You Use The Squeeze Page Form of eStore Plugin?

There are many reasons but the following is an example of the most obvious one. If the following sounds like you then this page has your solution:

I want to allow a customer or visitor to my website to get a free download of my digital content (e.g a pdf or mp3 file). Right now I use a widget from my Autoresponder (e.g MailChimp, AWeber) on my WordPress site and the website visitor gets directed to a download area that is not encrypted or secure and though the stuff is free, I do want to capture an optin to my mailing list in exchange for the free stuff. I don’t want the link to be passed around or be posted to a forum.

How it works?

You use a shortcode in a post or page to display a form that lets the user download a free product (eg. an ebook or a mp3 file) after they fill in their names and email addresses. Once the visitor fills in his/her details (name and email address) and hits the ‘Download’ button the plugin sends an email with the encrypted link that can be used to download the product. The plugin adds the name and the email address of the visitor in the customer database.

How to Add a Squeeze Page Type Form in a Post or Page

Add a new product to your products database using the ‘Add/Edit Products’ menu. (Don’t forget to fill the ‘Button Image URL’ field when you add the product. this image will be shown as the ‘download now/Get Now’ button. The plugin comes with a download button (download_icon.png) that is stored in the images directory of the plugin)

Squeeze form shortcode

Use the following shortcode where you want to insert a squeeze form on your site:

[wp_eStore_free_download_squeeze_form id=5]

5 is the product id of the product I configured. Below is the form that you get when you add the above shortcode in a post, page or sidebar of your site.


Video Tutorial

Can I Signup the Users to My Autoresponder List?

When someone submits the squeeze form, the name and email gets added to the the customer database of eStore plugin. You can optionally add the user to your Autoresponder (AWeber, MailChimp, GetResponse) list too.

If you want to signup the users to your Autoresponder list, you can do that by enabling the option in the plugin settings. It works like the following when you enable this option:

  1. A user comes to your site and visits the page where you have a squeeze form
  2. The user fills in the name and email address field of the squeeze form
  3. The details is captured in the customer database record of the eStore plugin
  4. The user also gets signed up to your autoresponder list

Creating a Stylish Squeeze Form Easily

You can use our stylish squeeze form addon plugin to create a nice looking opt-in form easily.

How to Redirect Users to a Thank You page After Squeeze Form Submission

Edit the product in question and specify the “Thank You” page URL in the following area of this product:

Buy Now or Subscription Type Button Specific Settings -> Return URL

When a user fills in the squeeze form for this product, he will be redirected to the URL you specify in the above mentioned field.

How to Use the Squeeze Page Type Form from a PHP file

To use the squeeze page type form from a PHP file (eg. the sidebar.php) use the following PHP function:


So the following line of code will add a squeeze type form for a product who’s product id is 5:

<?php echo eStore_free_download_form(5); ?>

Using an Ajax/JQuery Powered Squeeze form

You can only put one Ajax powered squeeze type form in one page though. So if you want to put multiple forms (one in header, one in footer, one in sidebar etc) in one page then don’t use this option.

Below is an example squeeze form to show you how it looks… feel free to put your details to see out how it works :)

How to Add CSS style to the Squeeze Page Form

The squeeze form is written in a div class named “free_download_form”. Simply add the style definition to the ‘wp_eStore_style.css’ file to add styling to the form. For example, the following will add a background image to the form:

background: url(;

Pre-configured Stylish Squeeze Forms

See the stylish squeeze forms addon page for details.

Note: We now provide technical support for our premium plugins via our customer only support forum


  1. admin says:

    @David, Thank you for the kind words. What would be your main reason to use the manual checkout instead of the squeeze form for this? I am trying to understand the requirement better.

  2. David Whitney says:

    eStore is by far the best most flexible eCart out there. Awesome customers service.

    My Question:
    is it possible to only collect customer NAME and EMAIL data in the Manual Checkout for Zero page? (disable, delete, hide address/phone fields)

    Thanks again.

  3. admin says:

    Hi Denise, What version of WP eStore plugin are you using? Please use the following shortcode for the squeeze form and let me know how you go with that:

    [wp_eStore_free_download_squeeze_form id=1]

  4. Denise Fay says:

    Hi there,

    I had a squeeze box on the right hand side before but then it came down some time ago. I’d like to add it again but am experiencing real trouble.

    I can get the sign up button/box/form to work on a regular page but not on the right side bar.

    Please help, it’s driving me crazy. I’m trying all sorts of short codes but it’s not working.

    Many, many thanks,

  5. Hey!

    I love this plugin so much! It does everything, and it’s so simple. And I’ve been looking… By far the best eCommerce software out there!

    Thank you,
    Ryan Arnfinson

  6. Janelle says:

    Hi, and thank you SO much for this wonderful plug-in. It has helped me so much. I was just wondering if there had been any updates to being able to edit the squeeze-page email that is sent to people for their free download? Thanks again!

  7. JeanHF says:

    Hi, Thought I’d get back to you before you did me. I’ve integrated Amazon S3 without difficulty and the download is working like a dream. Thanks for the good instructions regarding integrating the tool.
    Many thanks and best regards!

  8. JeanHF says:

    Hi! I’m really struggling getting a free pdf to work through the squeeze form. This is what I get in the email that comes to me when I use the form.

    “The wp_eStore download manager ran into a problem that it couldn’t handle, and is unable to process your download request. Please contact the site administrator.

    Please tell the site administrator the problem was due to the following reason:
    The file (on the server) containing your download couldn’t be opened.”

    Can someone please help?
    Many thanks and best regards!

  9. Tim says:

    Interesting article again! I really found some useful information on your website. Thanks so much. Keep up the good work!

  10. thanks such a good information about how to make squeeze pages



  11. Josh says:

    I really admire squeeze page. It hasn’t failed me yet in generating my target number of leads. If you have set it up correctly then there’s no way that you can’t build an excellent list from it. The technique is simple, offer them a freebie (e.g. an ebook) that they can’t resist in exchange of their email address. By the way, I found another great article about squeeze page, would you mind if I share the link here?

    Squeeze Page Tricks

  12. Nono says:

    Thank you Ivy. I managed to configure it correctly.

  13. Ivy says:

    Hi Nono, The link will use the same settings as a downloadable product. You can set an expiry time, amount of downloads or both.

  14. Nono says:

    Is there a way to limit the number of downloads? Also, does the link expire? Thanks.

  15. admin says:

    Check the “Redirect to Manual Checkout For Zero Amount Purchase” checkbox from the “Payment Gateway” settings. This will automatically send the customer to the manual checkout form. Given that you have allowed to give the customers the download after manual checkout form submission they will get the downloads when they submit the form.

  16. Graham says:

    I am in need of doing this but need some help. Here’s what we need:

    A customer who has a coupon code (that we have provided via published marketing (mailing ads) comes along and wants a particular study (we sell digital studies in pdf format). Does it make more sense to use the regular add to cart/shopping cart feature where they can use their coupon code at the checkout page and simply NOT use PayPal? This would simply be a matter of them using their code and choosing our secondary (manual) checkout method (which we do not have). Here’s the catch… we also want the PDF to be stamped with their information for copyright purposes. This may work for us as we already had Amin custom code the shopping cart page to enter a custom field that is stamped in the PDF. Remember Amin? Can we make this happen without using the squeeze page? I want to take advantage of the coupon feature so that a customer can use a coupon code once or twice, etc…, but still get a free study that is STAMPED with their information (pulled from that custom field).

    go here for an example (and click add to cart):


    Thank you!

  17. admin says:

    @Imgigclub, when an affiliate send the visitor to your squeeze page with the affiliate ID appended in the link they will automatically get cookied. You don’t need to do anything special for this.

  18. IMGIGClub says:


    I’m hoping I’m not the first person to ask about this… !

    I’d like to use this squeeze method to add people to an email list. But I also want these people to come from my affiliates, so I want the visitors “cookied” when they visit. Now, I realize the cookie is only good for the browser they are in when they visit. This will be far from perfect.

    But – can this be done? Is there a better method you can suggest to both get a visitor some warm-up material, and cookie them for the affiliate that referred them? (I know I can set cookies to live 365 days, for example.)


  19. admin says:

    Hi John, glad to hear you like the site.

  20. Hi. This is my first time here and it won’t be my last!
    Some very good information indeed and I will subscribe to you
    because I always seem to have problems with my Blog ( thru’
    my fault not theirs) and I hope to learn a few Tips and Tricks.
    Thank’s, John.

    Please send me a link (or Widget) that I can add to my site to
    recommend you.

  21. admin says:

    Yeah, if you have AWeber integration setup then when they submit their info the email address will be added to the AWeber Autoresponder.

  22. Velma says:

    When someone submits their info for the squeeze page download, can they be automatically added to an autoresponder such as aweber or the like?



  23. Ivy says:

    Hi Tim, Thank you for your kind words. We did add the feature that displayed the download information but this was causing a problem with IE and had to be removed until we can take a look at why this issue is happening.

    The download problem I answered on your forum post here:

    If you have anymore questions please let me know.


  24. tim says:

    I’ve also checked in different browsers – same problem with Safari or Firefox

  25. tim says:

    I have another problem: the digital download is stopping as though its complete at exactly 50.2 MB, even though I have verified the source .rar file is 213MB in one case and 390MB in another… this is happening every time with files larger than 50MB, but the download works fine with files less than 50MB

    I have verified the download via ftp & the source file is 100% fine

  26. tim says:

    thanks so much – for anyone checking out this plugin, it is brilliant & the support is excellent! I wish all developers were so active & supportive

    I launch my new site tomorrow so am doing final testing, one thing I noticed with big downloads is that the download progress bar in my web browser doesn’t say how big the file is, or display progress eg one file is 200MB and it currently says:
    38Mb of 0 bytes
    is this due to the encryption?

  27. SteHe says:

    Hi admin,
    please send this code to me too 😉

  28. admin says:

    Hi Tim, not a problem.. I will add something so you can place all the not wanted “domain names” in the settings area and it will ignore requests from email addresses containing those domains.

  29. tim says:

    I totally appreciate that, but with the great integration you have already done with AWeber & Mailchimp I don’t think there is any danger of that being a problem….

    The use of sites like trash-mail totally undermines the whole reason for having a squeeze form, and I get the impression that with your expertise & the example above that it wouldn’t be a huge task to implement via an extra setting/preference…

    with dub45 site I’d say so far 5-10% of people use mailinator/trash-mail
    & it sucks

  30. admin says:

    Yeah I know but then once you start adding all these features then you turn this plugin into a full featured autoresponder plugin (which it’s not) :)

  31. tim says:

    the site launches next week so its password protected,
    but it also applies to my last new site

    I added the code where I thought it should go but then got divide by zero errors….
    so i removed the code again

    I think it is a necessary feature for the squeeze form and would be great if there was an actual setting/preference for adding domains to block… Editing the code gets lost as soon as you do the next upgrade huh?

  32. Ivy says:

    Hi Tim, Can you please send us a link where this issue is happening so we can take a look at it?


  33. admin says:

    @Tim, if you know a bit of PHP then it is very simple… the following example might help:

    if (preg_match(“/”, $customerEmail))
    //don’t let this email subscrible

  34. tim says:

    Could you please provide the code to block a domain name from the Squeeze form? eg to block the domain:

    I can see where to add the code but I dont know enough programming to generate the code & know its right….


  35. Ivy says:

    Hi Ed, The eStore uses Paypal or 2 checkout. As of right now Paypal Pro is not supported by eStore. We do have plans to add this payment gateway in the future. With Paypal pro you can except credit card payments directly from your site (no redirection to Paypal). This is the major difference between Paypal and Paypal Pro.


  36. Does this plugin require Paypal pro or just a regular PayPal acct. Any advantage to PP Pro account with this?

  37. Linda says:

    Sorry, that’s what was missing. Thanks

  38. admin says:

    Did you put the URL of the image that you want to use as your “Download Now” button in the “Button image URL” of the product?

  39. Linda says:

    Hi Ruhul,

    I just added the squeeze page but it is not showing the download icon. Just a question mark instead of the image. I’ve tried both, Ajax/JQuery and normal type, but it is the same with both.


  40. Ramona says:

    Thank you for the new version, it wokrs well!

  41. admin says:

    Hi Ramona, change it in the “eStore_includes2.php” file. change it in both places on that file. Yes the eStore plugin work on WordPress MU.

  42. Ramona says:

    Does the eStore plugin work with wordpress mu?

  43. Ramona says:

    In which file can I change the email text (subject: Free download link)?
    I want to translate it into German.

  44. admin says:

    That depends on which squeeze page form you are using… look at the “ajax_process_download.php” file for the ajax based one. Search for the following in the “wp_eStore1.php” file for the normal one:

    if ($_POST[‘eStore_free_download’])

    There is not language files for the emails yet… you will have to manually use german language on those

  45. SteHe says:

    OK, thanks.
    But where can I find this?

    BTW – where are the eMail language files? I would like to translate some things to german.

  46. admin says:

    ah I see, in the code you can add a condition so if an email is entered like that then it doesn’t get processed.

  47. SteHe says:

    I want to block this customers to use the sqeeze-page on my site.

    Everyone with such an eMail-account should be blocked.

  48. admin says:

    yep… all you gotta do is setup a filter on your mail client or server. I personally use Gmail and use filters to block stuff I don’t want. This post might be of some help to you:

  49. Stephan says:


    is it possible to block some eMail sender (like ?

    On my site, the customers get an eBook (or something like that) for free!
    And after one week, I´ll send him/her a feedback-eMail.
    But with the trash account……. ;-(

  50. Jane says:

    Oi! Do I feel stupid. Thanks so much for the quick response. I thought I’d done that, but obviously not. Working like a charm now. (blush)

  51. admin says:

    Hi Jane, looks like you never saved the settings on this other blog where you installed a fresh copy of the plugin. Remember after you install the plugin fist time you should be going to the “Settings” menu of the plugin and check to make sure all the settings are set to your liking then save it by hitting the “Update Options” button (you need to save it even if you decide to just use the default values that you see there).

  52. Jane says:

    update…doesn’t appear to be a different version. They both show v so I’m not sure what that download was you sent me. But, re: the eStore_classes.php error…did I forget to flip a switch somewhere? Until this is resolved, I’m hesitant to change my extant installation.

  53. Jane says:

    Thank you so much for your fast response re: my problems with items not deleting from the shopping cart. Haven’t tested it yet, because of the following:

    Before installing it over the top of my extant one on my not-yet-live site, I tried it on a related (live) blog just for the squeeze/freebie function. I put in the code, and it appeared normal on the page. I tested it and instead of the “check your email” notice I got the following error message:

    Warning: Division by zero in /home/MY DOMAIN/wp-content/plugins/wp-cart-for-digital-products/eStore_classes.php on line 21

    The site is:



  54. admin says:

    @md, yes, you can get a comma separated list of all the emails of your customers from the eStore plugin then copy and paste it into your AutoResponder service. Each customer will then get the double opt-in message in their email.

  55. md says:


    I have a really dumb question here. I use the AutoResponder called GetResponse. Is there a way to transfer the person’s e-mail to my GetResponse account. Then from there they would do the double optin and then get the free product?


  56. admin says:

    Your web hosting is probably blocking the mails sent by the Simple PHP mail script. Try using the WordPress mailing system (You can set this from the settings menu of this plugin)

  57. David Martin says:

    Thank you so much. Some of the ‘fancy’ functions are now working fine. I am still having problems with the squeeze page though. It shows fine and looks great, and appears to work, but no email is being sent (I am not receiving the email). It may be that I have misconfigured something. Any ideas why this might not be happening the way it should?

  58. admin says:

    Hi David, if it’s not showing the Ajax powered squeeze page type form then that means the WP eStore version your are using is a little old. I will send you a copy of the latest WP eStore release.

  59. David Martin says:

    I am trying to implement a squeeze page on my site and the ajax squeeze doesn’t even show (I jets get the shortcode showing as plain text). The normal box shows but when I enter details I get the message ‘Could not send the download link!’ and when the page refreshes everything on the page is thrown into dissarray with boxes going over each other etc. Any idea why this may be? I am using the convergence theme, and the latest version of WP.

  60. admin says:

    @Angelo, I will contact you via email.

  61. Angelo says:

    hi, can you tell me how I can verify that?

  62. admin says:

    Hi Angelo, does dimple PHP mail work on your server?

  63. Angelo says:

    Hi! After a while, I tried applying your suggestions.
    So, using paypal sandbox the plugin generated a log file.

    Here it is:

    as I understood, all seems to go ok.
    But I still don’t receive any notification of the item sale, and no download link for the buyer :(

    Can you help me, please?


  64. John R says:

    Nice tool and will help be get a site going.

    One thing that would be nice is a way to add custom fields for a squeeze page. If you’re going to use the email for marketing, then you should really have the person’s permission that you may contact them…

    Likewise, you might want to have alternative contact methods. Unfortunately, because it’s a free download – you don’t get the Paypal info.

  65. Riva Sinjal says:

    Hi Ruhul,
    The PHP Exec plugin works great. I can now use the squeeze page on the sidebar.

    Thanks :)

  66. admin says:

    @Ken, What do you mean by Free with no form input? You need to collect the person’s email address to be able to send the encrypted link to him.

    If you just want to let a visitor download an item from your site you don’t need to use this plugin. you can just make a normal link that points to the file and they should be able to download it clicking that link.

  67. Ken says:

    I want a download now type button or Free with no form input need if possible

  68. Angelo says:

    Thank you, good infos! I’ let you know :)

  69. admin says:

    Hi Angelo, There can be many reasons for the emails to not get sent out (The IPN validation failed, product verification failed, wrong email address etc). The best way to find out the main reason is to enable debug and do a test transaction. The following URL should help

    WP eStore Troubleshooting

    Let me know how you go.

  70. Angelo says:

    Hi, I’m just about to launch my site.
    Unfortunately,after inserting name and email into the squeeze box, clicking on the download button makes no effect.

    Additionally, trying to buy something drives the customer to the thank you page, but

    – it doesn’t send a notify to the seller
    – it doesn’t send the email with the download link to the customer.

    I’m using 2.3 version
    (this also happened with previous versions, but I thought it was only a settings problem)

    Can you help me? Bye

  71. itsjeremy says:

    This is very cool. I will try this function shortly with one of our sites. Thanks!

    p.s. I just sent you some more money as we discussed earlier.

    p.s.s. I see you added the “notify” option. Are others finding it helpful too?

  72. admin says:

    @Riva, The text widget can’t execute PHP code so it won’t do it. You can use the PHP Exec plugin which is just like the text widget but executes PHP code too. There is a link to the PHP Exec plugin page from my list of useful wordpress plugin list post. Let me know if this helps.

  73. Riva Sinjal | AWC says:

    My WP theme is using sidebar1.php, so I tried to insert the code into the file (my product id is 7):

    But it never show up, even when I looked into the page source. There was no such code in there.

    Then I put the code into the text widget, it don’t show up either. But I can find the code in the page source.

    I do not really know about php coding, so could you please tell me where the mistake is?

    Thanks :)

  74. admin says:

    Hi Riva, can you please post what code you put on the sidebar.php so I can see if you made any mistake?

  75. Hi Ruhul,
    How to put squeeze box into the sidebar widget?
    I’ve tried to put the php code in the file sidebar.php, but it won’t come up.


  76. admin says:

    @Tracey, This has been fixed in version2.2. I plan to send out an email to the existing customers with a link to download the new version in the next 24 hours

  77. Tracey says:

    Love the plugin but also having problems with the squeeze box – still doesn’t display the form fields or the download button in I.E. 8 – is there a fix for this yet??

  78. Ryan says:

    Kudos for the plugin. It is very helpful.

    I’ll second the bug that squeeze page not working in IE (both IE 7 and 8 according to the reports I have received).

    And, I’ll submit a feature request to be able to modify the free download email. (The paid download Buyer email is editable, but I couldn’t find a means to edit the free download Buyer email.)

    Thanks and keep it up,

  79. admin says:

    @Angelo, Nothing feels better than a happy customer’s feedback :)

  80. Angelo says:

    wow, thank you so much. I think I have to adjust something, but the code you gave me works.
    The plugin is just unbelievable, and your support is great.
    your plugin = the best 9 dollars I’ve spent in my life!

  81. admin says:

    @Rado, At the moment this plugin doesn’t have bulk emailing functionality… It only allows you to build the list so I would recommend using the “Display customers email list” button to generate the comma separated email list and then use an email sending plugin eg. ‘wp email’ to send emails. There are already a lot of bulk emailing plugins/programs out there so I didn’t implement this feature in this plugin yet.

  82. admin says:

    @Angelo, The the squeeze form is written in a div class named “free_download_form”… try adding the following to the ‘wp_eStore_style.css’ file:

    background: url(;

  83. admin says:

    Hey guys, looks like there are few comments that require my attention so I just wanted to quicly say that I am going overseas on business and right now I am in Singapore in Transit… I will answer your comments after I reach my destination.

  84. Angelo says:

    I edited it by hand, so don’t mind.

    My problem now is:
    How can I put this image as widget background? (I put phpcode and installed exec-php)

  85. Angelo says:

    Can I have editable (psd) download icon?
    Please let me know (via emai is best)

  86. Rado says:

    Rahul, I think you happened to remove the trigger from this page somehow as the page isn’t showing the working Squeeze Page form sample at this moment.

    Qs: In the respect to this plugin, it’s very handy that the eStore plugin adds the name and the email address of the visitor in the customer database. Would there be a way then to send an email to all of these people automatically? Instead of sending emails one by one. Or how to send the emails in the easiest way, how can it be practised to send them say every month? This is great because if these people filled out a Squeeze form; means they already are interested in your service, therefore they are or can be potential customers.

Leave a Reply

Your email address will not be published. Required fields are marked *