Is it possible to integrate pro sites in a multi-network environment?

I am working on a local project where a multi-network environment may be useful. There are different multi-network plugins like network+ or wp-multi-networks available. My question is: does pro sites works with multi-networks?

For example with network+ they use subdomains for each network and subdirectories for the subblogs in each network (as I can understand from the litterature. So I can have a network called; now, can I use the pro sites plugin to create subblogs for client restaurants: sort like and so on, charging a fee for restaurant1, restaurant2 and so on?

Thanks for helping

  • Vaughan
    • Support/SLS MockingJay

    Hi @bashirbhugaloo,

    Pro sites was designed for multisite, you add a site to a pro level and then you can restrict the features/plugins/themes to each subsite based on their cumulative pro site level.

    I haven't used any of those plugins, but if you have a site to test with, then if you can add that multi-network blog site as a pro-site it should work, however, i doubt you will be able to sign up to specific sub networks using pro-sites. However, one of our developers has done some major improvements to pro-sites for an upcoming release, let me just ask @Umesh Kumar to see if this is possible in the development release, if not, the only thing I can do is to add it to the feature requests.

    Hope this helps

  • Jason
    • The Incredible Code Injector

    I currently use it in a multi-network with no problems for a few years now.

    It does require you to understand that all the settings are unique to a "Per Network" basis.

    Note* I do all payments offline, so paypal etc. may have issues, you may need the multi-ipn script.

  • Umesh Kumar
    • Code Wrangler

    Hi @bashirbhugaloo,

    I haven't tested it with such installation, and It isn't even in development version.

    However you can test it with your installation and in case you face some issues, you can ask questions here on the forum.

    Thanks for posting on forums, feel free to ask again. :slight_smile:


  • bashirbhugaloo
    • New Recruit

    Thanks Umesh, Jason and Vaughan. All your replies were precious. Well, Jason, as this will be a local site (Mauritius), I will not have on-line payments. I am happy to learn that you use pro sites in multi-networks environment. The University of Mary, Washington site ( is a superb example of the capabilities of multi-networks to build complex sites. So, giving the a customer the ability to use pro-sites with multi-networks would be great. They would be able to choose their themes (e.g marketpress for showcasing their products) and make updates of their own.

    Thanks all - I will try a proof of concept and communicate feedback in due course.

    Bashir Bhugaloo

  • bashirbhugaloo
    • New Recruit

    Thank Umesh. I will move on in a few days on my proof of concept. thank for testing. I find here many possible application for local sites if prosites works this way: e.g a local business community site, an education and career site, a tourist information site etc. same time empowering local people on using Wordpress as a cms - presently almost unknown here. I also do find an excellent business opportunity :slight_smile:

    Thanks for your encouragements.

  • Joe
    • Flash Drive

    Calvin hey! Good to hear though I am more interested to see if pro sites works with the wp multi-network plugin? If so, would it be off of a single pro sites install on Or would each network (which all networks being under multsite install), have to also install it's own pro sites plugin? Thanks!!

  • calvinrogercanas
    • New Recruit

    Hello @Joe

    Hope you're well today! :slight_smile:

    The pro sites works with wp multi-network plugin but the pro sites installs will be per network and not for the network of networks.

    I hope this answer your question and I make sense here :slight_smile:

    Best Regards,

  • dentm42
    • Flash Drive

    Integration is possible, but I did find one issue just today with the latest version of Pro-Sites (3.5.3 - 5/7/2016).

    If a user has sites on 2 different networks and goes to the "signup" page on either network, they receive a list of all their sites with links to change their subscription level. The problem is that the list is not filtered to only include sites on the current network.

    From what I can see, a simple check for $siteid in the foreach loop beginning at line 4511 of pro-sites.php should resolve the issue. Grab the $siteid of the current network master before entering the for loop, then compare it with the $siteid after the switch_to_blog - if they don't match, "continue" with the next one before running the permission check.

    I haven't investigated the problems associated with what happens when you try to upgrade a site on one network using the levels of another - nor have I (yet) looked at the changes needed to make sure a smart user can't mangle the URL to try to do so. I'm guessing it could make a pretty big mess of the user's site depending on how the levels are recorded in the database. In any event, it should be a fairly easy enough check (again check that the $siteid of the blog being upgraded matches he $siteid of the current network).

    Of course, if the feature levels are identical and the pricing is the same on the diferent networks, it shouldn't make any difference - but if that were the case, why would you create multiple networks?

  • dentm42
    • Flash Drive

    Here's the "NEW LINEs" I added to pro-sites.php to fix the list... in case it's of any use/interest to anyone.

    4510                         $network_siteinfo = get_blog_details(); // NEW LINE
       4512                         foreach ($blogs_of_user as $id => $obj) {
       4513                                 if ($count >= $per_page) {break;}
       4515                                 $loop_count++;
       4516                                 if ($start > $loop_count) {continue;}
       4518                                 // permission?
       4519                                 switch_to_blog($id);
       4520                                 $blog_siteinfo = get_blog_details(); // NEW LINE
       4521                                 if ($network_siteinfo->site_id != $blog_siteinfo->site_id) continue; // NEW LINE

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.