WordPress.org

Ready to get started?Download WordPress

Forums

Paid Memberships Pro
[resolved] How to make members confirm their email address before final registration (19 posts)

  1. protsahn
    Member
    Posted 1 year ago #

    To access the membership free account level, I want users to confirm their email adddress by some verification code.

    How can I do that.

    Please advise.

    http://wordpress.org/plugins/paid-memberships-pro/

  2. Ann Stokes
    Member
    Posted 1 year ago #

    I'd like to do this too. I want people to be able to sign up with free checkout, but not be able to log in until they verify their email. Is there a way to restore this functionality after installing PMPro? I'm not a programmer, so a plugin would be great!

  3. protsahn
    Member
    Posted 1 year ago #

    Waiting for support. How can make sure to verify email id before final registration.

  4. strangerstudios
    Member
    Plugin Author

    Posted 1 year ago #

    Hi, guys. We just had someone sign up for a "do it for me" plan on our site who we are building something like this for. Once that is done, I'll post it to our blog. So stay tuned there (http://www.paidmembershipspro.com/blog/). It may or may not be members only.

  5. strangerstudios
    Member
    Plugin Author

    Posted 1 year ago #

    Here's the plugin, will be blogging about it when I get a chance:
    https://github.com/strangerstudios/pmpro-email-confirmation

  6. Ann Stokes
    Member
    Posted 1 year ago #

    Great! Does it use WordPress' existing email confirmation method?

  7. Slocum Themes
    Member
    Plugin Author

    Posted 1 year ago #

    Hi Ann,

    We're using our own custom confirmation functionality. AFAIK, there is no existing WordPress email confirmation method.

    Thanks

  8. adragt
    Member
    Posted 1 year ago #

    I have this added to my site, http://freeworshiploops.com

    It does indeed kick off the confirmation email and it expresses the need to verify but for some reason it is not restricting access after registration. All content that should be available to free users is immediately and fully accessible despite not having confirmed yet.

    I'm afraid I've missed something in the code? I set the array to 3, which is the level id for my free membership. I couldn't figure out if there was anything else I'm supposed to change/edit though.

    Any hints ahead of the blog post?

  9. messica
    Member
    Plugin Author

    Posted 1 year ago #

    Hey there adragt,

    Unfortunately, I can't replicate your issue. Are you sure you edited the code correctly?

    If you need further help or customization, you may want to consider becoming a member at http://www.paidmembershipspro.com/pricing/ for our Member support.

    Thank you,
    Jess

  10. adragt
    Member
    Posted 1 year ago #

    No, I'm not sure since there's no documentation yet. I was hoping for a hint on what exactly the author intends on being edited for each install (all I could find was the array for which membership levels to require verification).

    I implemented PMP as an experiment, but I'm fast approaching the threshold where I agree it will make very good sense to pay for support.

  11. strangerstudios
    Member
    Plugin Author

    Posted 1 year ago #

    How are you protecting content on your site?

    The email confirmation addon overrides the pmpro_has_membership_access_filter() function via a filter, which should hide content protect by default (you checked "requires membership" level on a post or page).

    If you are using the pmpro_hasMembershipLevel() function to protect things manually, it may act funny with the email confirmation plugin because the user still technically has the level but isn't verified.

    You could add some additional code to check if a user isn't verified and always redirect them to a certain page, which would further protect your site from unverified members.

  12. Wimans
    Member
    Posted 11 months ago #

    I'm experiencing the same issue as Adragt. I'm using the PMPro shortcode to protect parts of pages. Jason, from your reply I understand that the email confirmation plugin does not work in this case?

  13. messica
    Member
    Plugin Author

    Posted 11 months ago #

    That depends. How are you restricting your content? As Jason mentioned, depending on your method, it might act funny with the Email Confirmation plugin.

  14. Wimans
    Member
    Posted 11 months ago #

    Hi Jessica, thanks for you quick reply. I'm using the [membership level="..."] shortcode, as described on http://www.paidmembershipspro.com/documentation/content-controls/with-shortcodes/ .

  15. messica
    Member
    Plugin Author

    Posted 11 months ago #

    The membership level shortcode actually does use the pmpro_hasMembershipLevel() function, so complications could arise. Like Jason said, you can add some additional code to fix this.

    If you need further help, please consider becoming a member at http://www.paidmembershipspro.com/pricing/ for our member forums.

  16. Mike Imken
    Member
    Posted 11 months ago #

    Any chance of a blog post or update on this?

    We're trying to set up a free membership for a training site, using LearnDash and the LD PMPro plugin, but course access is still given immediately without verification.

    We unfortunately just discovered this loophole and it makes using these plugins for a membership learning area not possible.

    EDIT: I see there is a blog post but it requires paid membership. Before I pay can you let me know if the code works with LearnDash or the LD-PMPro plugin. I tried the version on Github and it didn't. Any info on that? Thanks.

  17. messica
    Member
    Plugin Author

    Posted 11 months ago #

    Hey Mike, try adding this to your active theme's functions.php file or PMPro customizations plugin:

    function my_pmproec_content_filter($content, $post) {
    
        global $current_user;
        $validation_key = get_user_meta($current_user->ID, 'pmpro_email_confirmation_key', true);
        $levels = pmpro_has_membership_access(null, null, true);
    
        if(!empty($validation_key) && $validation_key != "validated" && $levels)
            $content =  "<strong>Important! You must click on the confirmation URL sent to " . $current_user->user_email . " before you gain full access to your membership</strong>";
        return $content;
    }
    add_filter('learndash_content', 'my_pmproec_content_filter', 10, 2);

    You can change the text displayed by editing the $content variable. This will block access to any member-protected content to anyone who hasn't verified their email address.

  18. Mike Imken
    Member
    Posted 11 months ago #

    Thanks Jessica! That works perfectly.

    In our case, to really finish it off and in case this helps someone else, we also edited the PMPro Email Confirmation plugin "Process validation links" section to redirect to the membership page.

    Thanks again!

  19. messica
    Member
    Plugin Author

    Posted 11 months ago #

    No problem, glad to help!

Topic Closed

This topic has been closed to new replies.

About this Plugin

About this Topic