Multisite Subsite New User Registration That Does Not Go Through Main Site

Hello All,

I read all the related threads from 2 years forward and voted for Aaron's plugin to become official, so if I have missed some new development my apology but that said....

Looking for a registration and log-in solution on a multisite installation so that users who register on subsites can do so without being redirected to/through the main site.

Subsite owners would like new users who are registering to not see or go through the main site when the user signs up on a subsite.

  • SooBahkDo

    Somebody proposed this solution on another forum:

    "Just read through the last few pages of this forum, and think I found a partial answer: http://wordpress.org/support/topic/multisite-and-user-registration?replies=9

    make a page template from the wp-signup,php file, remove the redirects to the main site and you shoudl be able to register on sub sites."

    And another thread on this:
    http://wordpress.org/support/topic/new-users-cannot-register-to-child-blog

    However, our installation has nearly 300 themes for users to select from when they create a new subsite and that solution sounds like we'd need to create new page templates for all. ????

  • SooBahkDo

    Hello All,

    Just some additional thoughts on this years old issue and/or workarounds.

    To recap: We are in need of a registration and log-in solution on a multisite installation so that users who register on subsites can do so without being redirected to/through the main site.

    Subsite owners prefer that new users who are registering on their subsites not see or go through the main site when the user signs up on a subsite.

    Our main site w ww.ourmainsite.com allows users to create new subsites and choose from nearly 300 different themes. It is fine for the person who is first creating a new subsite to do so from the main site. However, when they have their subsite up and running they do not want users landing on their subsite who are registering there to be directed back through the main site.

    One of our multisite installations where this is needed will have over 200 individual sites and new users need to be able to register on each subsite without ever leaving the subsite where they are registering.

    I realize user registration on multisite is network wide and a user who has already registered on any site on the network and then tries to use same email to register on another subsite on the network would be prevented, (or could log in with their existing credentials if they understand what is happening and remember them) so that makes it seem like one or two things need to happen:

    1) users who are registering on a subsite and who are already registered on the network because they registered on another site on the network need to be presented with a message or page/form (customizable by subsite admin) and then added as a user with a role on the subsite they are registering for (new user role customizable by subsite admins)

    2) it seems the new user registration process on a subsite would need to lookup and retrieve existing user info from the network (based on the email a user attempts to register with on a susbsite) and if info is found on the network, then the user is presented with a message or page/form (customizable by subsite admin) advising the user that their existing credentials associated with that email address on the network [subsite(s) name already registered on] and [user name on subsite(s) already registered on] and [password on subsite(s) already registered on] will provide them with access to [name of the subsite they are on].

    3) Users would need access to a "send credentials" link that would email them their info and the email might contain information for multiple sites on the network that they have a role(s) on. For example if they forgot their info or did not understand what they were encountering then the email sent to them might include:

    Network name: Main Network Name (super admin option ??)
    Email Registered on Network: user@email
    User: username
    Password: userpassword
    Site(s) on network where you have a role:
    http://www.site1.com, admin
    http://www.site2.com, subscriber
    http://www.site3.com, editor

    The user could then click on any one of those links in the credentials email they received and be directed to the log in for the target site.

    Not a perfect solution, and that just my first thoughts about this.

    Thanks for considering this request.

  • scooby

    Anything new on this?
    I have my MS up for clients and would like to add users to the client site w/o them being redirected to the main site causing confusion. I've been hunting for a solution for a long time and short of adding a template page to every client site I found little for a solution.

    Wanting to have my cake and eat it too... It would be better yet if once they've registered for one site on my network they could add themselves to other sites on the network w/o re-registering as they come across other business sites in our community. I don't want to automatically add them to sites up front tho as done through multisite-user-manager.

    Thanks in advance
    Eric

  • SooBahkDo

    Hi scooby,

    Not exactly the solution we are still looking for, but here's a plugin that we are now using on one network and while it does require you to create a page on each site and place a shortcode in that page, it seems to work fairly well.

    http://wordpress.org/extend/plugins/join-my-multisite/

    This plugin is activated network wide and allows each site admin to choose the settings for how visitors get added to the site they are on. One admin setting option is that if the visitor is already a registered network user and they are logged into any other site on the network when they visit the new site they can be auto added to the site so they do not even need to do anything.

    It is also the solution cited in this thread
    https://premium.wpmudev.org/forums/topic/user-signup-for-wpmu-subsites

    As for the login page creation process, to speed up the login page creation we use this plugin which allows you to instantly replicate (broadcast) the join page across any other sites on your network including images, categories, etc. of the original. So just make one slick one and then broadcast it out to the other sites in only seconds and you are done.

    http://wordpress.org/extend/plugins/threewp-broadcast/

    Note: the most recent version will only work if you are on php 5.4
    It crashes on servers running anything less.

    The "gotcha" on this solution is that if the user is new and they do not know that the site they are joining is part of a site network they already belong to, then many try to use the same email that they already have registered with on another site on the network and they encounter an error message telling them the email is already in use and then they are confused since they may have no idea that one site is connected to another site or that they both exist on a network etc. and since they are not redirected to the site (or any one of the sites) they already belong to on the network.

    THAT is the logic jungle which a login in solution needs to manage seamlessly for users since users really do not need to be dragged through all that just to signup on a subsite that they may or may not need to know belongs to a network containing another site they have already joined.

    I am not sure why this is a non-existent plugin and why it seems so impossible for plugin developers to implement, but it is frustrating.

    Best of luck.

    Phil D

    P.S. if this helps you out, throw us a few points? Thanks

  • SooBahkDo

    Hello All,

    Just an update on this thread with a solution some may find useful for constraining new user registration and log in to a subsite on a multisite network.

    QUALIFYING WHAT THIS SOLUTION OFFERS

    This is a limited workaround solution dealing primarily with the new user registration and user log in MESS that is multisite user registration and which is apparently unresolvable and/or as Timothy reports a low priority for WPMUDEV and for every other forum in the universe that I have requested solutions from.

    This solution offers a quick and relatively easy way for a Multisite owner to quickly provide a means for subsite admins to have their new users register and/log in on a network subsite without ever being directed to the main network site. It also allows password recovery from the subsite.

    If the multisite owner wants this feature network wide on all sites, then network activating the plugins and configuring them network wide is an option.

    If the multisite owner wants this feature only for some subsites, then individual configuration of the plugins site-by-site will also work.

    WHAT YOU WILL NEED

    You will need the plugins WP-Members and optionally Join My Multisite

    http://wordpress.org/plugins/wp-members/
    http://rocketgeek.com/ (Great Documentation and additional modules)

    http://wordpress.org/plugins/join-my-multisite/

    Each plugin solves a different part of the multisite network new user/log in MESS.

    SETUP AND CONFIGURATION

    You can experience the end result of this solution in action on this site:
    http://mykickathon.org/

    The register and log in forms displayed have not been programatically or CSS tweaked and are working as you see them right out of the box with the theme active on that site. (WP Members has worked with every theme I have tried it on)

    The WP Members sidebar log in widget is part of WP Members and a critical part of this solution ANY OTHER LOG IN OR META WIDGET MAY CREATE UNEXPECTED USER REDIRECT RESULTS The "Forgot" and "Register" links on the WP Member sidebar widget do not appear unless you create two pages on the site and add a shortcode to those pages.

    RATIONALE FOR USING WP MEMBERS
    Of the dozen or more membership plugins both paid and free that I have tested including Gravity forms, WPMUDEV Membership and others, WP Members is the simplest, easiest and quickest to configure for the purpose of constraining and controlling new user registration and log in experience to a subsite.

    1) Activate WP Members
    2) Add two new pages to the subsite "User Profile" and "Register"
    3) Add the specified shortcode to each page
    4) In WP Members configuration set the custom urls to these pages
    5) Uncheck/check a couple of setting boxes on WP Members per your preferences
    6) Add the WP Members log in widget to a sidebar
    DONE!

    HOOOOORAAAHHHHHHH!

    Now when a new user visits the susbsite and registers they will never leave the subsite. If they forget their password, they can recover it without leaving the subsite. They can visit the subsite and log in without ever knowing they are part of a multisite network and without ever visiting the main site.

    WP Members is also a BREEZE to use for restricting content access to site members only and has a number of exciting add-ons available

    ************************

    If you need more advanced membership features WP Members offers some compelling ones that are easy to configure and use. However it is not as robust as WPMUDEV Members plugin which I find complex to configure and use.

    If you want to skip use of Join My Multisite, then WP Members may be all you need and life is simpler. However, if you like the idea of automatically adding users to various sites on your network, then forge onward.

    RATIONALE FOR ALSO USING JOIN MY MULTISITE

    Join My Multisite must be activated network wide so if you elect to use BE AWARE THAT it impacts WP Members functions, but we are using one simple IMPERFECT trick that seems to make them cooperate without any custom programming. This is a quick and dirty way to accomplish the initial basic objective of constraining a user's experience to the susbite they join AND also automatically add existing network users to any new susbites they discover while logged in.

    YES THIS IS A VERY CRUDE SOLUTION but at least it is a solution which seems to be more than anyone else can provide.

    The user experience is successfully constrained to the subsite with no user awareness of the network or other network subsites. However, you must use the WP Members login widget AND criss cross a shortcode from one plugin to the other's register page.

    Simply paste the Shortcode for Join My Multsite [join-my-multisite] into the "Register" page you created for WP Members INSTEAD OF the WP Members shortcode [wp-members page="register"]

    We found that without this step the lost password feature of WP Members will redirect the user to the main site. However, when the shortcode is replaced as indicated, then the lost password feature keeps the user on the subsite.

    BE AWARE: Switching the shortcode also switches the FORM being presented to the user to the one generated by Join My Multisite rather than the much more robust and configurable form generated by WP Members.

    With this CRUDE PATCH you lose the added fields and other features of the excellent WP Members form, but you successfully keep users constrained to the susbite for new registrations, log in and lost password retrievals AND any logged in network users visiting the subsite are automatically added as users for that site.

    WHY BOTHER TO EVEN USE JOIN MY MULTISITE?

    If you experience a number of network users reporting that they encounter the "email already in use error" when they try to register on a different subsite of your network because they do not know the subsite is part of your network and thus do not know that their same log in credentials will work on this new site they have discovered, then you might be able to eliminate up to 50% of those problems by using Join My Multisite.

    On a subsite using these two plugins, after you configure Join My Multisite you may never even know that Join My Multisite is active and we do not even use its forms. (EXCEPT AS INDICATED IN THE SHORTCODE CRISS CROSS SHOWN ABOVE)

    Join My Multisite is employed for the sole purpose of minimizing new user registration confusion caused when an existing user on another site on our network attempts to register as a new user on a different subsite on our network. When that happens they encounter an error that their email is already in use and are confused.

    We use Join My Multisite configured to automatically add logged in network users to any network subsite they happen to visit. Thus, IF the user is logged into any other site on the network when they happen to visit another susbite which is part of the same multisite network -(whether or not the user knows it is a network subsite)- The user is automatically added as a user to any network site they visit.

    LIMITATIONS: Granted automatically adding users to new sites they discover can confuse some users who do not know or understand that they are on a network of sites and this does NOT solve the additional scenario of confusion when a network user who is not logged in visits a subsite that they do not know belongs to the multisite network and then attempts to register and encounters the error "email already in use" message. But it has helped reduce these user reports.

    ************************

    ADDITIONAL TOOLS THAT CAN HELP

    ThreeWP Broadcast
    http://wordpress.org/extend/plugins/threewp-broadcast/

    WPMUDEV Plugin Blog Templates
    https://premium.wpmudev.org/project/new-blog-template/

    These tools can help you to rapidly create the necessary pages on all the subsites where you want the user registration and log in experience to be constrained to the subsite.

    FOR NEW SITES JUST BEING CREATED
    The WPMUDEV blog template plugin allows you to configure a "template" site with the needed pages and all plugins activated, configuration options, set, etc. so that new sites created from it are ready to use and will constrain user registration and log in to the subsite.

    FOR SITES ALREADY IN EXISTENCE THAT YOU WANT TO MODIFY
    Threewp-broadcast is a GREAT tool for duplicating pages, posts and featured images across sites in a network. In our case we can broadcast about 10 at a time without issues. You can use it at any time to add needed pages to a subsite on which you want to constrain user registration and log in to the susbite.

    ***************************************

    ALTERNATE SCENARIO
    If you prefer that a user be able to log in on the main site or any susbsite and then be directed to the dashboard of the subsites they belong to then this may be a plugin for you and it can be activated site-by-site or network wide.

    This scenario may be more common where users are aware that they are visiting sites on the same multisite network.

    WPMS Sidebar Login Widget
    http://wordpress.org/plugins/wpms-sidebar-login-widget/
    http://www.7mediaws.org/general/wpms_sidebar_login_widget/

    TESTING IF ANY OF THIS WORKS
    Until you register as a new user and request a lost password and log in, you can;t be sure if this all works as you hope.

    I find that this tool is very helpful as you can switch to a different user and confirm what their experience is like. Just be careful if you log out while switched to a low privilege user, the cookie that get set can prevent you from regaining Super Admin abilities. Don't Panic. If that happens I have been able to log in as the low level user I switched to and then switch back to Super Admin and all is happy.

    User Switching
    http://wordpress.org/plugins/user-switching/

    BEST WISHES

    ****************************************

    I would not have taken time to write this except for the high level of aggravation and frustration the lack of a better solution this issue has caused.

    Hopefully, a better solution will come along, but until then maybe this will help someone who has not yet pulled ALL their hair out over this issue.

    Regards,
    Phil D

  • SooBahkDo

    UPDATE ON THIS SOLUTION:

    IGNORE WP MEMBERS SETTINGS WARNING
    I forgot to mention that when using WP MEMBERS as suggested on a Multisite Network, a red warning appears in the WP Members settings dashboard, "Your WP settings allow anyone to register - this is not the recommended setting. You can change this here making sure the box next to "Anyone can register" is unchecked. [why is this?]." IGNORE THIS The warning provides a link to change the setting, but that link and that setting do not apply to Multisite Networks.

    You can even turn off this warning in the WP Members configuration panel.


    LOGOUT CONSTRAINMENT CONSIDERATIONS

    When seeking to fully constrain a user to a subsite and have them never be aware the site is part of a network you will also need to address the user experience at log out when users are typically dumped out on the network login form. This still occurs even when WP Members is active.

    WPMUDEV's Plugin LogOut Redirect may resolve that for you.
    I just asked for clarification about its use in another thread because the setup instructions are ambiguous creating yet another point of confusion and thus compounding the hair pulling for those trying to resolve this issue.

    https://premium.wpmudev.org/forums/topic/can-each-subsite-admin-on-multisite-network-set-a-logout-redirect-url-for-their-site#post-553073

    If LogOut Redirect does in fact work site-by-site, then it can be activated on sites where it is preferred to fully constrain users to a subsite and thus you can prevent them from being dumped onto the network log in form when they log out of the subsite.

    HOORAH #2

    NEXT UPDATE WILL DISCUSS

    EMAIL VERIFICATION AND LOGIN CONSTRAINMENT CONSIDERATIONS

  • SooBahkDo

    AN ADDITIONAL SOLUTION FOR SUBSITE REGISTRATION~LOGIN/LOGOUT OF SUBSITE USERS

    This solution is a bit less complicated to configure than the previously discussed solution and it uses a different approach because subsite users are still directed to/through the network registration page ~ main site registration page, but the look of that page can be fully customized so that every subsite has its own look and the main site can have its own look as well, so users need never know that they are going through the main site registration/login page.

    The plugin that can do this for you is

    Custom Login
    https://wordpress.org/plugins/custom-login/

    The free version is very flexible and easy to configure. We ordered the pro version and have not even used it yet as the free version is so flexible.

    We also found another gem of a login / logout plugin that works great along with Custom Login (and all the previously discussed plugins) and BAW Login/Logout Menu allows you to place login and logout links right in your menus. Very slick.

    BAW Login/Logout Menu
    https://wordpress.org/plugins/baw-login-logout-menu/

    Very space saving and the menu links send the user straight to the customized login page that you configure with the Custom Login plugin. The repository indicates that BAW Login/Logout Menu has not been updated since 2012-11-09, but it works flawlessly for us on multiple installations and over 70 sites at WP 4.1

    These two plugins can also be configured to work with all the plugins mentioned earlier in this thread. We have encountered no conflicts with any of them being active at the same time, but be aware that the earlier discussion was about configuring those plugins to NOT SEND USERS TO THE NETWORK LOGIN PAGE.

    However with the Custom Login plugin active, you may or may not even need the previously discussed solution since you can control the look of the network login page so it exactly matches each subsite.

    Users will never know they are on the network login ~ main site login page when you use the Custom Login plugin.

  • SooBahkDo

    To all: We still use WP-Members configured with dedicated login, register and user profiles pages and it works seamlessly for new user signup on subsites without them being directed through the main network site.

    Also, we still use Join My Multisite to minimize users who are already registered on the network trying to register again on another site on the same network.

    And now that a bug is confirmed in WPMUDEV Domain Mapping that interferes with using SSL and the default WP login pages on subsites WITHOUT a mapped domain, WP- Members provides a workaround that avoids the issue. (Default WP login pages behave properly on SSL subsites with a mapped domain.)

    https://premium.wpmudev.org/forums/topic/domain-mapping-introduces-mixed-content-loading-on-https-subdomains

    It does not appear support plans to address or resolve the bug anytime soon, so sticking with WP-Members / Join My Multisite is a workaround to the bug AND it provides subsite user registration without involving the main network site.