Adds three more levels of privacy(visibility) to the Settings–>Reading page.
-
Site visible to any logged in community member – “Network Users Only”.
-
Site visible only to registered users of blog – “Site Members Only”.
-
Site visible only to administrators – “Site Admins Only”.
Multisite Network Admin can set an override on site privacy at “Network Visibility Selector” on Network Settings page
Multisite Network Admin can set privacy options at Network-Sites-Edit under “Settings Tab” as well.
Network Admin receives an email when blog privacy changes.
RSS feeds require authentication.
robots.txt updates accordingly.
Ping sites filters correctly.
Privacy status reflected in Dashboard “Right Now” box.
Uses WP3+ functions auth_redirect(), network_home_url(), and home_url() for SSL login redirects.
Login message has link to sign-up page of a “Network Users Only” blog or a link the blog admin email if user is logged in but not a member of a “Members Only” blog.
Localization ready.
Download
Latest version: Download More Privacy Options v4.6 [zip]
More Privacy Options at WordPress Plugin Repository
Installation
This section describes how to install the plugin and get it working.
- Upload entire
more-privacy-options
folder to the/wp-content/plugins/
directory - Network Activate the plugin through the ‘Network Plugins’ menu in WordPress
- Set multisite “Network Visibility” option at Network-Settings page
- Set individual site visibility options at Settings-Reading page, or…
- Set individual site visibility options at Network Admin-Sites-Edit page
Network Settings: Network Visibility Selector
Network Sites Edit: Site Settings(scroll way down to see)
Settings Reading: Site Visibility Settings
Changelog
4.6
- WP 4.6 tests OK, cleanup php notices
Is there a way to make it so that as the SuperAdmin, I do not receives an email when blog privacy changes?
Thanks
Terence
Sure you can remove the email by commenting out the add_action near the end of the plugin code:
WordPress in a couple places does this
if ( '0' != get_option('blog_public') )...
when it would seem they should more specifically do thisif ( '1' == get_option('blog_public') )...
. If the only possible values for ‘blog_public’ are a set of 1 and 0, then all is fine. But my plugin adds a few more integers to the set(1,0,-1,-2,-3) and that’s where it gets mucked up. SO that wayif ( '0' == get_option('blog_public') )...
would be better if changed toif ( '0' >= get_option('blog_public') )...
.A plugin I do rely on heavily is the Sitewide Tags pages plugin and it does use comparisson operators to check blog_public before listing blogs/posts
$blog_status = get_blog_status($post_blog_id, "public");
.if ( $blog_status != 1 && ( $blog_status != 0 || get_sitewide_tags_option( 'tags_blog_public') == 1 || get_sitewide_tags_option( 'tags_blog_pub_check') == 0 ) )...
forgive me, but i am new to this. i downloaded the plug in…set the privacy to admin only. still public.
now i see that i need to change my role from admin to super-admin…but i have no idea how to do this. in settings, there are only options: admin, guest, etc.
how do i become super-adm on my site.
thanks very much. bill
SuperAdmin, aka Network Admin. You must have a WordPress Network (Multisite) for this plugin to be of any use to you.
Hey David,
I’m not sure how no one has ran into this problem yet, but I’m not able to add a new user to a specific site in the network.
You know how a user gets an activation email with a link (../wp-activate.php?key=…) to a page that shows a randomly generated password to go with their username? When this plugin is activated the new user does not get to see this page because they get redirected to a login page. Since they are a new user with no password for their username, they cannot do anything in this login page.
Is there a way around this? Maybe make wp-activate.php an exception from being private?
Try adding to the top of the plugin code
if( strpos($_SERVER['REQUEST_URI'], 'wp-activate.php')) return;
Hi David,
Thanks for this great plugin, it looks like exactly what I needed.
I’m a bit flummoxed as to what’s going on with my own install (wp 3.5, buddypress 1.6.2). I’ve set the network settings to “Default: privacy managed per blog. “, but I’m then unable to change the settings on an individual site to “Network Registered Users Only”, “Blog Members Only”, or “Blog Admins Only”. If I uncheck the “public” option, the More Privacy Options change from Google-able to No Google. Otherwise it seems I have no control over the options. I can toggle the buttons, but after saving it reverts back.
Hope you can help with this! Thank you.
Try the update to version 3.5 in the WP plugin repository.
Hi, I am using this plugin to hide a site during development but I do not see a method to make the site visible again once it is done. Is there a way to do this?
Thanks
Patricia
I addition to the installation steps on the plugin page …
To activate/deactivate a Network Only plugin you must have a Multisite Network version of WP. Then the plugin is activated at the Network Admin->Plugins. Site by site visibility is managed on the Settings->Reading page in WP 3.5+.
I am the network administrator of the Multisite network so I have access to turn on and off the More Privacy Options. I just want to turn off the privacy setting for one site within the multisite network.
If I deactivate the plugin would I not be turning it off for the entire network?
If I go to the Sites Settings to the Readying options, under Site Visibility there are only three options. “visible only to registered users of [multisite network name’]”, “visible only to registered users I add to [site within the multisite network] or site “to be visible only to Admins”.
I would like to make a site that is set to registered users only to be visible by all.
I do not see an option to make a private site public again.
In WP 3.5.1
With the plugin switched on and active, you should see 5 options – two default radio buttons AND the three add-ons from this plugin:

Either of the two options above the note – “Note: Neither of these options blocks access to your site — it is up to search engines to honor your request” – will make your site visible to normal guests.
BTW, with the plugin deactivated, only a single checkbox discouraging search engines remains.
David,
Love the plug-in, thank you very much. One suggestion for future releases is the ability to allow non users access to a site with only a password.
Here’s a free plugin that looks to do what you are after. http://wordpress.org/extend/plugins/password-protected/