WP-Members™ 2.7 available now

I have released WP-Members™ 2.7 as a beta release.  For those that consider themselves early adopters, you can download and install the upgrade.  

While I am still in the process of testing certain elements of the upgrade for final release, we are at a point where the release is pretty much ready to go.

You can view a list of changes/features for the 2.7 release here.

To try out the 2.7 version prior to official release:

  1. Visit the WordPress Plugin Repository.
  2. Select version 2.7 (will download as a zip).
  3. Deactivate the plugin.
  4. Upload the new version files.
  5. Reactivate the plugin.

Comments

  1. Pieter says

    Hello Chad,
    First of all, great plugin and nice update! I am working on a membership website and struggling with a redirect after registration. I have seen a post on this topic elsewhere, but did not manage to implement it correctly.

    I have tried this in the wp-members-core.php, but it did not work.
    “Alternatively, you could use wp_redirect in that to redirect to a another page:
    case “success”:
    wp_redirect(‘http://www.mysite.com/my_thank_you_page.html’);
    break;”

    Can you please help me with a solution?
    Regards, Pieter

    • Chad says

      Well, first of all, let me say that doing anything to the plugin that takes it out of it’s normal process flow is not recommended. Also not recommended is making changes directly to the plugin’s code as that will be overwritten when/if you upgrade.

      I think the easiest way to approach this is to actually put the redirect at the end of the registration process rather than try to work it into the wpmem_securify function. If you do it in wpmem_securify, there are just too many states to worry about, whereas in the registration function, you can just put in one redirect and then no matter how the user is registered you will hit the redirect.

      To do this, you need to create a new version of the wpmem_registration function found in wp-members-register.php using the instructions for pluggable functions found here.

      The place to stick your wp_redirect call would be in the register case at the very end, just before the function returns the string “success”. It should look something like this:

      // successful registration message
      wp_redirect( ‘http://mydomain.com/my-redirect-page/’ ); exit();
      return “success”; exit();
      break;

      Note: that even doing this using the pluggable function method, you will need to make sure that if this function changes in a future version, you will need to make appropriate changes to your custom function to keep it compatible.

      • Pieter says

        Thanks for your reply Chad! It works now. I am aware that making adjustments to the plugin code is not recommended, but for this website there is (unfortunately) no other solution.

        • Chad says

          Actually, Pieter, if you would like to test version 2.7.1, I have released a public beta version (now release candidate 4). This version includes some hooks, one of which is an action hook for the redirect you are talking about.

          To use the wpmem_register_redirect hook, you would add a hook to your theme’s functions.php file or the wp-members-pluggable.php file like this:

          add_action( 'wpmem_register_redirect', 'my_reg_redirect' );
          function my_reg_redirect()
          {
          	wp_redirect( 'http://yourdomain.com/redirected-page' );
          	exit();
          }
          

          This particular action uses wp_redirect and must close with exit();. At the conclusion of a successful registration, this action would redirect the user to a specific page you set in the wp_redirect $location parameter.

  2. Anneke says

    Hi,

    I just installed the lite plugin from wp-members. I need a registration form (or two) that allows members to choose between two membership levels, paid and unpaid. For the paid version members need to fill out extra mandatory fields such as address and phone no. and of course pay (Paypal).
    Paid members have access to the “Meet-up” pages and the “Meet-up” forum. All other content is available for both paid and unpaid members.

    I am trying to find out how to do this with your plugin but somehow I can’t figure it out. I am a newby to WP. I would appreciate some help. I don’t mind paying the 30 bucks for a pro-version however I first need to know if this is even possible.
    At this point I haven’t even been able to create a registration form in the lite version….

  3. Jan says

    Hi,
    Thanks for a great plug-in. However, I think I found a small bug in the new registration form when you have your own custom fields after the standard TOS field. No segment is generated for the TOS field when visible and hence all labels after the TOS-field are misaligned by one row. (i.e label of TOS+1 field placed before TOS field and so on). I solved this by moving the for closing bracket on row 635 in wp-mebers-dialogs to row 630 above the output.

    / Jan

    • Chad says

      Hi Jan – thanks for the comments. I wouldn’t necessarily call that a “bug.” The TOS is intended to be the last field and you can drag any fields below that to be above it (the field manager is drag-and-drop).

      If, however, you have a specific purpose for not having the TOS come last, I would first recommend NOT making changes directly to the plugin files. This creates management problems for you as you will have to reapply changes anytime you upgrade. Instead, the forms can be manipulated by CSS so you can adjust the spacing using a CSS specification of whatever the next label is. For example, if the next label was Email (label for=”user_email”), then you could set the top margin like this:

      #wpmem_reg label[for="user_mail"]{ margin-top: 49px; }
      

      This would push down that label and any others that follow. (Learn to set up a custom stylesheet here.)

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>