Allow access to site to register

Enabling "Only allow logged in users to see all blogs" works fine. However, I need to be able to allow users to Register.

Could I get some feedback on how this could be accomplished?

TYIA,

~eric

  • Paul Barthmaier

    Hi Again,

    Wow, let me be the first to congratulate you on your Second Post.

    Wait, I already congratulated you, so it's my second congratulations, I guess...

    But no, it's my first of this post! Ok, First congratulation of this post.

    Anyway, as I was saying in the previous post, you have Network Activated the plugin, which will give you 4 new settings on your Privacy menu. For what this looks like on each individual site, I'll show you. Note that I've cut and paste a bit to conserve space. If you have a lot of plugins, the info won't be next to one another like the pic indicates.

  • Paul Barthmaier

    So for your public site, the settings should look just like the one that I have indicated above. It's set with no restrictions for normal web-browsing and crawling.

    For your private site, you can just choose one of the 4 below that best suits your needs. The fourth one is a handy new addition to the plugin because you can use this without requiring that a visitor to your site go thru the process of registering. Just a quick visit, but still protected from the outside world with a password.

  • Paul Barthmaier

    Since you need a User account to be able to get a site, it's pretty clear that B implies that you can't register sites. But C is a logical problem with the its semantics. It should mean that you can register sites only after you've registered a user first, but you can still register users at this time. What the 4 quadrant charts indicates and what my site is actually doing, is only existing users can register sites, new users are SOL, but that doesn't make sense that it would be set up this way.

    Ok, I know, I know, too much coffee, not enough sunlight. I get it.

    But anyone have any thoughts for me here?

  • ericslangley

    Pali,

    I wondered the same thing about the logic of the four choices for registration. They don't make sense.

    My question is a bit different though. When "Only allow logged in users to see all blogs" in Multisite privacy is enabled site visitors are provided only the login prompt. I still need them to be able to register.

    Oh wait. There is a "register" link under the login. I did not notice that!

    ~eric

  • Sue

    Hi Eric

    It's quite common for the main site on Multisite to be public with our Mulitsite privacy plugin. This way you can provide all your support, promotion and sign up for your network on your main site while keeping all other sites private.

    Would this type of approach work for your situation? If so, you just need to go to Settings > Privacy in site admin of your main site and make sure it is set to one of the public options.

    Thanks!

    Sue Waters
    WPMU DEV Support

  • ericslangley

    Hi Sue,

    You wrote: It's quite common for the main site on Multisite to be public with our Mulitsite privacy plugin. This way you can provide all your support, promotion and sign up for your network on your main site while keeping all other sites private.

    I note: Yes, this makes sense but I still have the registration issue.

    Here's my scenario. The main site is a public company blog which anyone can register for. A secondary site is the internal company site that can only be accessed with this setting: "Only registered users of this blogs can have access - anyone found under Users > All Users can have access." Additionally this site will be restricted to registrations with the company domain name email address. This way I know that anyone registering is allowed to since they have a company email address.

    It would be nice if we could make just the "Register" page public so accomplish this. Though I am open to any other way.

    ~erid

  • Sue

    Hi Eric

    Normally when you use "Only registered users of this blogs can have access - anyone found under Users > All Users can have access." an admin user would add the users to that site to ensure only those they wanted to access the site could. You can easily add them in batches using something like Blog & User creator - https://premium.wpmudev.org/project/blog-and-user-creator

    You would normally use "Only registered users of this blogs can have access - anyone found under Users > All Users can have access." when you only want very specific people from within an organization to be able to view the contents of a blog.

    However, if your multisite network is only hosting sites for one company, and you are going to limit email registration to the company email domain then the better option is "Visitors must have a login - anyone that is a registered user of ___ can gain access." This means they'll just need to create a username using your sign up page and once they are logged into their account they'll be able to view the internal company site. This is the most common option used on our Edublogs Campus sites where they want everyone from their school or school district to be able easily view the sites while preventing anyone else from viewing the contents of the sites.

    The register link on the login page of your Private site will take them to your sign up page which is located on your main site provided you have enabled Registration in Settings > Settings in the network admin dashboard. In your situation you would make your Registration Settings either " User accounts may be registered." or " Both sites and user accounts can be registered." depending on whether you want them to be able to create their own sites. Under Limited email registration you would add the company email domain.

    Thanks!

    Sue Waters
    WPMU DEV Support

  • ericslangley

    Hi Sue,

    Thank your for taking the time to think this through.

    In our multisite scenario for a company the primary site is public and anyone can register with any email address. The secondary site is private and only users with company email addresses can register.

    I am aware that we can add users but for several internal and customer service reasons we do not want to go that route.

    We want users to self register on the internal site.

    So..still looking for workarounds.

    ~eric

  • Sue

    Hi Eric

    I can't think of an option that would allow users to self register on the internal site like this. I'm also wondering for your scenario if the better privacy option would be " Anyone that visits must first provide this password" This way they would not need to register on the internal site and they just need to be given the password to access.

    However, I might be missing a solution I haven't consider to allow users to self register on the internal site. Would you like me to ask the others in our team if they can think of an option that allows self registration?

    Thanks!

    Sue Waters
    WPMU DEV Support

  • Mason

    Hiya eric,

    Sue mentioned your issue to me and I thought I'd swing by with an alternate suggestion. You could, of course, always modify the plugin to provide the custom functionality you're looking for - and we have job boards available for that here: https://premium.wpmudev.org/wpmu-jobs/ However, if you only have the one domain and one sub-domain, perhaps there's a better alternative.

    You could use 2 independent WordPress installs. One would be the public install at the root domain - the other would be the company-specific one on the subdomain. The subdomain blog could be kept private and limited by email domain as mentioned above.

    Then, you could user our user sync plugin to sync the users from this sub-blog to the main 'public' one automatically. This way, the users won't have to re-register on the main site and, since the sync only works one way, folks on the public site will not get pushed to the private site.

    Would that work for you? Here's a link to the user sync plugin:
    https://premium.wpmudev.org/project/wordpress-user-synchronization

    Hope this helps and best of luck with your project. Thanks!

  • ericslangley

    Mason,

    Thank you for taking the time to think about this issue as well.

    Yes some custom modification is possible and quite possibly very likely.

    For my purposes two WP installs will not work as this is a Multi Network install. Syncing would be very complex...

    There is another site privacy plugin, BuddyPress Private Community, that words it this way;
    "The MODE, two modes: block all pages from logged out users apart from a few public pages OR allow access to all pages apart from a few private (members only) ones."

    Thus model allows access to a few public pages, such as Register. This plugin is old though and does not say that is supports WP or BP Multi Network. I have not tested it yet.

    ~eric

  • PC

    Heya Eric,

    Here's my scenario. The main site is a public company blog which anyone can register for. A secondary site is the internal company site that can only be accessed with this setting: "Only registered users of this blogs can have access - anyone found under Users > All Users can have access." Additionally this site will be restricted to registrations with the company domain name email address. This way I know that anyone registering is allowed to since they have a company email address.

    Here what I would suggest is that you can make your internal company site as your main site and the company blog is the secondary site (Which makes sense though, blogs always come secondary) and after that go to the network settings as a super admin, and mention the company domain in the circled area in the screenshot. This way only the user with company address would be able to register for the main site (which is currently you secondary site) and on the secondary site, which in my suggestion would be your blog any email address can be used.

    Now, one thing I am not sure about is, when I select the settings as described, would It limit any registration to company domain name only ?

    Hoping some developer to tell me how I can override that if that is the scenario. I mean to ask if I limit user registration to a particular domain on my primary site, then would that be applicable on my other sites in the same network as well, if yes, then how to override that and if no, then I think Eric got his solution.

    Cheers
    PC

  • Mason

    Hiya @ericslangley,

    Bummer. I understand your specific need here. I'm gonna mark this as a feature request for development as there doesn't appear to be a solution built. I'll cc the developer as well. All of our development is dictated at the popular request of members here. If enough folks chime in with their +1s and on wpmudev.uservoice.com it'll get a top priority for us.

    I'm not aware of any solution that will work for you 100% in this scenario so I must again recommend our Job Boards if you need something done quickly: ttp://premium.wpmudev.org/wpmu-jobs/

    Thanks!

  • ericslangley

    Mason,

    Thanks, this has been wracking my brain for over a week now. There is just no easy way to do it. It seems to me that this would be functionality that at least a few folks might use.

    It's probably just a few lines of code as well...

    Interesting that WPMU DEV is using uservoice.com and note the WPMU DEV Q&A plugin to handle voting...

    Right now I have a kind of akludge workaround. I am running WPMU DEV Social Theme. This Theme has the following setting: Global Privacy Setting
    Do you want to enable privacy on all members profile for not logged in user * only logged in user can view members profile and members directory. 'disable' by default

    This actually blocks users that are not logged in but DOES allow access to the Register page. However, I am stuck using this theme to get that functionality.

    Best!

    ~eric

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.