The WordPress plugin called Plugin Organizer allows you to choose which plugins are loaded on particular pages within a WordPress site and allows you to choose the order that they are loaded. This seems to me to offer a pretty exciting piece of WordPress site functionality in that it allows you to focus the functionality you need in the particular place where you need it, which I believe could provide a big performance boost in general. And I think it has the potential to help a lot with the SoFA website in particular, although I still need to work with Website Development Circle to test it. In fact, I think that at least the selective enabling feature might be something that would be good to have as core WordPress functionality, but that’s a separate conversation. Plugin Organizer, however, is a bit challenging to understand, so I want to provide a bit of documentation here.
Plugin Organizer provides several different ways to configure the conditions in which various plugins are enabled or disabled, and it’s not immediately clear how they interact with each other. There is a support topic that discusses the interaction between these sections, and after finding that topic and playing with some examples, what follows is my understanding of how Plugin Organizer applies configurations from different sections.
First, Plugin Organizer has a Global Plugins
section, which allows you to enable or disable plugins site-wide. Specifying plugins in any other configuration section will override the Global Plugins
configuration.
Next, you can use the Post Type Plugins
section to enable or disable plugins based upon particular post types. If you have enabled Custom Post Type Support
for a particular post type, then the Post Type Plugins
configuration will override the Global Plugins
configuration for that type. Also, only if you have enabled Custom Post Type Support
for a type, then you can override this Post Type Plugins
configuration when editing a particular post of that type. You can do this on the editing page for such a post.
You can also use the Plugin Filters
section to configure what plugins are enabled or disabled for sections of your site based upon URL patterns that match pages being visited. It is important to note that the Plugin Filters
configuration only applies to pages that are not one of the types enabled in the Custom Post Type Support
setting: the Post Type Plugins
configuration takes precedence over any Plugin Filters
configuration.
Another point to note is that if you have turned on the Disable Plugins By Role
setting, you have to enable and disable plugins independently for each role that you select in the Role Support
setting, and also for the Not Logged In
and Default Logged In
pseudo-roles. This could be confusing—and could make it look like Plugin Organizer is not functioning correctly—as a particular configuration set starts off applying to the Not Logged In
pseudo-role, and you may likely be testing (as I was) with a logged-in account.