Support » Plugin: Plugin Organizer » Advanced Issue / help request

  • Hello Jeff, I hope this finds you doing well…

    I have an advanced Multi-Network, Network of ‘Multi-Site Networks’ and I have been plagued with an issue for over two years that I just determined is centered around my love of this plugin.

    Unlike a standard Multisite system, a Multi-Network Multisite system isn’t limited to just ‘blog_id’, it also has an additional designater; ‘site_id’.

    The following screen-shot should help you understand this structure better.
    Exhibit Ahttp://imageshack.com/a/img923/4930/piNVcl.png

    With that said, the following scenario will help illustrate my dilemma.

    The problem arises when I need to or want to Network activate a new plugin or when I deactivate an existing plugin on one of my ‘Networks’ once they have been setup and each contain their own set of sub-sites. From what I can tell, the script in the mu-plugins folder seeks to write / rewrite to the ‘active_sitewide_plugins’ database table in order to accommodate the changes so you can update your settings within the P.O. interface. Which brings me to the problem… in my database there are several ‘active_sitewide_plugins’ tables only they each have an additional field, ‘site_id’ for filtering. Exhibit Bhttp://imageshack.com/a/img923/1499/P4IEwH.png

    So, when I activate a new ‘Network Plugin’ it tries to write to each ‘active_sitewide_plugins’ but instead of writing to every table it actually ends up activating the plugin on (every subsite, every network) as if it were activated from each sites standard admin dashboard. Yea, it’s a mess 🙂

    So, I believe what I need is simple (famous last words). When updating, we need a small function that basically says something like; if update is from (site_id)? edit ‘active_sitewide_plugins’ with/on ‘site_id’?

    I’m not a beginner when it comes to code but I’m barely intermediate when it comes to not only writing a function like this correctly but more importantly, knowing where to put it or what to apply it to. As this is most likely outside of your normal ‘scope of support’, I’d be very happy to make a respectable donation to your cause. This plugin is a must use on our system(s) and up until now we have either had to live/stick with our initial activation’s or painstakingly go through as many as 60-70 sites at a time in the middle of the night deactivating the aftermath 🙂

    Any assistance you can offer would be appreciated and if you’re able to come up with a solution, we would be happy to add it to whatever file necessary and test the junk out of it. We are backup monkeys so we can break the system as many times as it takes to reach success.

    Have a great day and thanks in advance 🙂

Viewing 6 replies - 1 through 6 (of 6 total)
  • I see you responded to several people here in the last few days but I don’t even get a courtesy comment? I don’t expect you to run out and solve my the problem I’m encountering but it would be nice to at least know you’re aware of my post. As you can see I spent a great deal of time articulating this.

    Plugin Author Jeff Sterup

    (@foomagoo)

    What plugin are you using to make your site a multi network install? Did you write custom code to create that structure? I use functions in the PluginOrganizer.class.php file that filter the sitewide plugins when a plugin is deactivated/activated sitewide. That maintains the order that was set for sitewide plugins. Without it the order would reset whenever you activate/deactivate a plugin sitewide.

    You could try the following code in a plugin file to remove my filters and see if that helps.

    
    global $PluginOrganizer;
    remove_filter( 'activated_plugin', array($PluginOrganizer, activated_plugin), 10 );
    remove_filter( 'deactivated_plugin', array($PluginOrganizer, deactivated_plugin), 10 );
    

    Thank you for taking the time to respond, sorry for venting my frustrations in public, I normally reserve communications like this to private forums as I know anything can be worked out. That said, I would be happy to share my configuration with you in a more private setting and even compensate you for your assistance if we can solve this. Like I said, this has always been a favorite and one of the more vital application in my library.

    In the meantime I will setup a staging site to test this but what I think would be better would be to create a function that would recognize the site/blog ID of the foundation network from which the plugin was activated network-wide. If I have to reset the order of everything each time that might prove to be more work than it’s worth.

    I will let you know how this affects the process and see about connecting outside of these forums.

    Again, thank you for taking the time to respond, it is appreciated very much.

    Plugin Author Jeff Sterup

    (@foomagoo)

    I couldn’t program that into Plugin Organizer since that would be a custom thing specific to your site and would affect everyone else.

    Plugin Author Jeff Sterup

    (@foomagoo)

    Did my suggestion help?

    Thank you for following up. I have not tried it yet. Spread too thin but will be looking at this over the weekend and I will let you know!

Viewing 6 replies - 1 through 6 (of 6 total)
  • You must be logged in to reply to this topic.