Forum Replies Created

Viewing 15 replies - 121 through 135 (of 777 total)
  • Yeah, it’s hardcoded for “your-name” and “your-email” (without quotes). It doesn’t really understand any extra fields you might add, so there’s no way to refer to any additional fields within EBD itself (you can use other plugins to get CF7 values into a database, but that’s not really going to help you with trying to use those values in the email that EBD sends to someone). You’re basically stuck with your-name if you want a name field in there.

    (and you must use your-email or else nothing will work)

    I’ve never seen MailPress and have no idea what it is or what it does. However, if it’s a plugin related to mail — and it sounds like it is — then that’s probably where the issue is coming from. Suggest you look there or contact them.

    Ah, if it’s showing up in both emails then it’s related to something else. You must have another email-related plugin of some type that is interfering somehow. Do you have an SMTP plugin perhaps? Or have you modified WordPress to send email via an SMTP server? Or, perhaps you have some sort of templating type plugin installed .. maybe something about Twig or Dust or Angular or maybe some program like Marketo or Mailchimp or something like that?

    • This reply was modified 9 years, 5 months ago by dtynan.

    The problem is that all of your Download buttons on your page have #contact_form_pop as their href target and you have every form named with id=”contact_form_pop”. Thus, when one clicks the Download button, the javascript simply finds the first form with that name and uses that. That’s why every form submission sends a download_id of 6 (because it’s always using the first form and your first form is download_id of 6).

    You need to fix all the duplicate id=”contact_form_pop” tags to be something like id=”contact_form_pop_1″ and id=”contact_form_pop_2″ and so on and then fix all your Download button links to correspond to the appropriate new id for each form.

    Yeah, if it’s the “notification email” that I referred to earlier, then that would come from the CF7 form that you created (on the email tab of that form .. you need to Edit that form in the wordpress admin menus).

    Or, if it’s not the notification email and it’s the other email (which would only be sent if you had selected ’email’ or ‘both’ in the EBD Settings), then that would be 9.1 or 9.2 of the EBD Settings.

    Maybe you have put something in 9.1 or 9.2 in the EBD Settings page?

    Are you set to ‘inline’, ’email’, or ‘both’ in the EBD Settings? If you are set to ’email’ or ‘both’ then realize that EBD will send 2 emails out. If you are set to ‘inline’ EBD will send 1 email.

    EBD always sends 1 email to the To: address from the Contact Form 7 form that you made. I call this email the “notification email”. It is just to tell the administrator (or whoever you put in the To: field in the CF7 form settings) that some website visitor has downloaded the file.

    EBD sends a second email to the website visitor if you have configured EBD as ’email’ or as ‘both’ in the EBD Settings. That second email goes to the email address that the website visitor typed into the form when he visited your website. That email normally contains a link to the download that the website visitor can click on to download the file, or it has the download file attached to the email, or both. You can change the text of that email by putting stuff in EBD Settings 9.1 or 9.2, which you should not do until you have everything working .. once you get everything working, then you can go back and customize the email template if you want.

    To fix that you’ll need to modify email-before-download.php.

    Somewhere around line 631 of that file you will see the line:

    
    $mail['body'] = str_replace("[your-message]", 'The downloaded file name(s): ' . $title, $mbody);
    

    You need to change that line so that it looks like the following line (or comment the existing line out and make a new line that looks like the following line):

    
    $mail['body'] = str_replace("[your-message]", 'The downloaded file name(s): ' . "\n" . str_replace("|","\r\n",$title), $mbody);
    

    Nope.

    Yeah the plugin description page could be improved. It does mention that Download Monitor and Contact Form 7 are required over on the FAQ page at least.

    Problem 1:
    You must make the email field on your form be called “your-email” (without quotes). Currently, yours is just called “email”. You may also want to change “nom” to “your-name” — not required, but EBD is hard-coded for “your-name” and “your-email” .. those two fields gets stored in the database and get exported in the csv file (and you must have it be your-email or it won’t work). See the screenshot page for example if needed ( https://wordpress.org/plugins/email-before-download/screenshots/ ).

    Problem 2:
    The download link not working -might- be fixed when you fix problem #1, but I think it looks like a separate issue. Most likely, there is something wrong with the download file entry in Download Monitor. It looks like maybe it doesn’t know where the file is (because it tries to redirect to an empty string rather than to a URL). Usually your best bet is to just add a new download rather than trying to fix one that is messed up. If I were in your shoes, I would go into Download Monitor and Add a new download and then upload my file (change the filename first or delete the existing one out of wordpress) and save it and get the new download_id and then go put that new id in your EBD shortcode.

    You may have a 3rd problem related to the email delivery, but see how far you get with the help I’ve given so far and report back…

    Ok, I got logged in. What should I click on to get to the form … still don’t see it..?

    I don’t see the form on that page .. is that the right link? (Also, fyi, it didn’t ask me for any kind of login)

    could be several different things. post a link to the page so i can try it.

    Well that narrows down the problem to some sort of issue with Contact Form 7 and your page, rather than anything to do with Email Before Download. You could ask on the Contact Form 7 support forum, but I suspect they are going to tell you to do something similar to what I already told you, which was this:

    In your case, your page is very complicated. It loads tons and tons of stuff, plus you’re using caching/optimization plugins which are moving around javascript and css and deferring stuff and on and on… There’s a good chance that’s the cause of the problem. Additionally, you have another CF7 form hiding in a slide-out panel on the left side of the screen. Normally that shouldn’t cause an issue, but it’s just one more thing that -might- be causing problems.

    I suggest you check the contact_form_id in the shortcode, check your form to make sure it is your-name and your-email, turn off your caching/optimization plugins, and try again. If it still doesn’t work then you’re just going to have to figure out how to make a much simpler page to test with — get rid of all that junk that’s loading (get rid of that other CF7 form), etc

    Yeah, that’s odd. I don’t think I’ve seen quite that behavior before…

    If you don’t fill in the form, or only fill in one field on the form, and then hit Submit, it does an AJAX POST and it gets back a JSON response telling the user he needs to fill out the form properly. That is all working as it should.

    However, if you fill in both fields (name & email) then hit Submit, it does an AJAX POST but it never gets a JSON response. After 5 minutes nginx times out and it gives a 504 bad gateway message. I have never seen it not return some sort of JSON response or error or whatever .. in this case it’s like the program never runs or it gets killed off before generating anything.

    If you really haven’t changed anything, then my guess would be that you have the Wordfence firewall turned on and some rule got in there that is blocking the response from coming back (or blocking the AJAX POST from ever getting there in the first place). Or, maybe the database is down or some other system-type problem and the PHP program is getting killed off (and you have error messages set to go to a file or something). I don’t know, I’m just guessing … hard to say without more info. Maybe the Honeypot thing is somehow getting involved and killing it off? Who knows…

    What you should do is turn on WP_DEBUG and make the warnings/errors go to a file. You probably want something like this in your wp-config.php

    
    define( 'WP_DEBUG', true );
    define( 'WP_DEBUG_LOG', true );
    define( 'WP_DEBUG_DISPLAY', false );
    

    see https://codex.wordpress.org/Debugging_in_WordPress for more info. Then try again and look in the wp-content/debug.log file and see what’s happening. Note that some hosting providers do weird stuff with debug logs … sometimes they’ll show up in your cpanel or something. If needed, you might need to ask them for assistance on that.

    Also, you might want to check your webserver error log. I think you are running Apache behind an nginx server that is proxying (I think). There might be info in the Apache error log as to what is happening (particularly if the process is getting killed off or something like that).

    If none of that helps, you might try turning off as many plugins as you can (turn off caching, security, etc) and try again, However, since it used to work, that seems a bit unlikely, but it is possible. I see from archive.org that you used to have the mailchimp subscribe checkbox visible and now it’s hidden .. I can’t imagine why that would make any difference, but if you just changed that then maybe change it back temporarily just to see…

    Really, you’re just guessing if you can’t see some errors .. there should be errors somewhere, just need to enable them and send them to a file or find where they currently are (do NOT let the errors display to the screen or it will break EBD in the exact same spot where it’s currently broken).

Viewing 15 replies - 121 through 135 (of 777 total)