Debugging a site with 60+ plugins

I just joined a few hours ago and would like an expert to take a look at my site to see if it is looks okay. I have been tinkering with a wordpress site running buddypress and sensei with a robust woocommerce store. Lots of changes and plugins. It is loading slowly now and I have 60 active plugins at this point.
Is it okay to have that many plugins?
Is my site set up in a problematic way that is causing it to slow down?

Buddy press Docs gives error message: Fatal error: Maximum execution time of 30 seconds exceeded in /home/content/p3pnexwpnas10_data01/95/2850095/html/wp-content/plugins/woocommerce-subscriptions/includes/abstracts/abstract-wcs-dynamic-hook-deprecator.php on line 60

i'm not sure how to fix it. Do you have recommendations?

  • Adam Czajczyk

    Hello Ben,

    I hope you're well today an thank you for your question!

    Buddy press Docs gives error message: Fatal error: Maximum execution time of 30 seconds exceeded in

    This means that BuddyPress (or BuddyPress-related) scripts weren't able to complete before hitting maximum allowed execution time for PHP and therefore were terminated by server. You should be able to change that limit by yourself as described below:

    1. In your server's management panel (e.g. cPanel) search for "PHP settings" and look for "max_execution_time" setting; try switching it to "300" instead of "30"

    If there's no such setting, try this way:

    2. create an empty "php.ini" file inside the root folder of your WP install (or better yet, your server) and add following line there:

    max_execution_time = 300

    In case still no luck, there's also another way to go:

    3. add these lines at the top of your site's .htaccess file:

    <IfModule mod_php5.c>
    php_value max_execution_time 300
    </IfModule>

    As for the plugins and speed.

    I admit that 60 plugins at once is quite an amount. Are you sure it is necessary to use them all? I mean it's always good to review plugin's built-in features against your expectations because some of their features can be easily replaced with a simple snippet of code added as "mu-plugin" (Must Use plugin) or a theme modification (via child theme)

    It's also good to search for simpler alternative of all "all in one" (I'm not referring to brand here, just a feature set) plugins, for example there are plugins that add hundreds of shortcodes for you while you're only using 2-3 of them.

    That said, I took a liberty of accessing your site and checked your plugin's set. If I may, I'd like to suggest starting with following steps:

    1. I can see there are many not active plugins that seem to be duplicated by other not-active plugins and/or other active plugins: I'd remove all those inactive plugins that you now you don't need anymore;

    2. There's also a number of plugin's active that are specifically designed to be used during site development or for "fixing" it (such as e.g. Regenerate Thumbnails, Site Stager, Theme Check etc): it's good to keep these plugins disabled and enable them only if necessary

    3. That said, most of the plugins you're using are "extensions" to other plugins: to Sensei, BuddyPress and WooCommerce: I think it would be good to carefully review documentation of these three plugins to check if all those extensions are really necessary as some of the features may (I'm not 100% sure but it's worth checking) simply be "hidden" a bit deeper in "main" plugins' settings.

    Having this cleaned up, you could then perform speed assessment test such as Google Page Speed Insights (here), Pingdom Website Speed Test (here) and additionally Chrome/Firefox browser's audits.

    You could also install and run "P3 Plugin Performance Profiler" plugin (here) on your site.

    Togather, this should give us a pretty insightful view on what's consuming most of the resources on your site, therefore giving an idea on what steps could be taken to speed it up.

    Best regards,
    Adam

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.