• Skip to primary navigation
  • Skip to main content
  • Skip to footer
  • Store
  • Support
  • Theme Documentation
  • My Account
  • Cart

9seeds

Building Custom WordPress Solutions | Plugin Development

 
  • Custom Development
  • Themes
  • Plugins
  • About
  • Contact
  • Blog

News

How to troubleshoot a WordPress site using Plugin Detective

Posted on September 5, 2019

When a feature stops working on your WordPress website, minor panic can set in. If yours is one of the approximately 40% (as of this article’s publish date) of websites that’s running WordPress 5.2 or above, you’ve probably received an email entitled, “Your Site is Experiencing a Technical Issue”, and you’re off to quickly fix the problem. But, what if you’re managing a website below version 5.2 or didn’t receive the snazzy new error email? A difficult-to-troubleshoot error can ruin an entire afternoon of productivity (and sales) attempting to find the issue and fix the site. 

Here’s how to troubleshoot a WordPress website prior to WordPress 5.2 (spoiler: not too efficient)

  1. Disable all of the plugins on your website.
  2. Open a second tab with the front-end of your website and ready the reload button.
  3. Reenable plugins one by one as you refresh the front-end of your website.
  4. Find the plugin responsible for the issues, and fix accordingly.

For a long time, this has been the common advice on how to troubleshoot a WordPress site prior to WP 5.2. While not technically wrong, this process can be time consuming and arduous at a moment when speed and accuracy matter. In 2018 at WordCamp Orange County, WordPress pros Natalie MacLees and Nathan Tyler presented a new spin on an old method of troubleshooting WordPress websites.

How to troubleshoot a WordPress site the efficient way

Natalie and Nathan dug deep into their classic programming knowledge and created a plugin that automates the plugin enable/disable process using a binary search. The plugin is called Plugin Detective and it finds broken plugins in a fraction of the time that it’d take the traditional method. Here’s how it works:

  1. Plugin detective disables half of the plugins.
  2. If the problem persists, the plugin re-enables the first half, and disables the second half.
  3. If the problem is fixed, the plugin begins the same process on the new half, and continues until the offending plugin is determined.

Because the plugin uses a binary search, with every iteration, half of the plugins are ruled out. On a site with dozens of active plugins, this method saves a lot of time.

Putting Plugin Detective to the test

In theory Plugin Detective is a great idea, but I wanted to test out how it works on a real site. I installed a test site with sixteen active plugins, and intentionally put a typo in one of the plugin files to render the site inoperable.

The Plugin Detective (named Otto) started by asking if there were any required plugins that needed to be left on for the site to load. After all, there’s no sense disabling a key plugin and causing a different issue. I told Otto I didn’t have any required plugins on my site, and he started by disabling everything and asking me if the issue was fixed. (If the error was still happening, that meant that the cause of the error was probably something else, like mu-plugins or the theme.) Since my issue was fixed, Otto knew that one of the plugins was to blame.

The plugin ran through the list, activating or deactivating half of the list each time and asking me after each pass if the issue was resolved. Overall, it took seven passes for the Plugin Detective to determine which plugin was broken, and took less than a minute of elapsed time. Otto was also able to deactivate the offending plugin for me, so I didn’t have to mess around with (S)FTP or the database to manually disable it.

How to troubleshoot without access to wp-admin

The plugin worked really well, but I started to think, “what are the chances that the site I’m trying to troubleshoot has this plugin installed?” or, “what happens if I can’t get into the backend at all because of a white screen?”. Well, Natalie and Nathan must have had those same thoughts when they created Plugin Detective. If the plugin isn’t already installed on the broken site, it’s straightforward to get Plugin Detective up and running:

  1. Manually copy the unzipped plugin folder over to /wp-content/plugins
  2. Go to YOURSITE.COM/wp-content/plugins/plugin-detective/troubleshoot (which will load even if the site won’t load)
  3. Log in with a valid WordPress administrator account
  4. Say hi to Detective Otto!

Final thoughts on Plugin Detective

The ability to quickly and easily track down a plugin conflict on a white-screening site is impressive, and overall the Plugin Detective is an amazing plugin. Natalie and Nathan have really re-written the guide on how to troubleshoot a WordPress site using Plugin Detective, and we’ve quickly added the plugin to our troubleshooting toolkit for sites on older WordPress versions.

Continue Reading

Robert Gillmer

    More by Robert Gillmer

    CoBlocks, the Gutenberg page builder

    Posted on August 16, 2019

    We continue our Gutenberg block plugin review series with a dive into the features and benefits of CoBlocks. While most block plugins are billing themselves as first and foremost, block plugins, with a touch of page building capabilities, CoBlocks has gone all in as a self-proclaimed Gutenberg page builder. We spent some time playing with some of the latest CoBlocks features, and we’ll explore some of what we found in this article.

    CoBlocks has powerful page building capabilities

    The row is the one basic layout mechanism included with the CoBlocks system, and it’s powerful. Unlike some of the popular purpose-built page builders, the row block allows multiple levels of nesting; it’s also easy to adjust width, margin, padding, and colors of the [nested] rows. The block interface is super intuitive, and width adjustments can be made using drag-and-drop features that make this block feel very much like a visual builder. 

    While CoBlocks is off to an excellent start as an in-editor page builder, there’s more work to be done to reach the level of capability of purpose-built builders which allow for conditional display and full-page layouts. Probably more a limitation of Gutenberg, the blocks interface gets a bit clunky attempting to drag elements from within the row block to other rows or new elements.

    There are plenty of cool specialty blocks

    From social blocks to restaurant / services menus, CoBlocks has created some pretty awesome blocks built with the same intuitive interface used within the row block. Our favorite specialty block is the Pricing Table which facilitates quick creation of simple, responsive pricing tables well suited for a services company. These specialty blocks compliment mobile responsive Genesis themes and help the creation of advanced layout objects that appear to have been built mobile-first. The masonry gallery is also particularly awesome providing a nice visual refresh of the old gallery system within WordPress.

    Why should I trust this plugin?

    It seems these days that the good Gutenberg block plugins are all being acquired by larger companies. In this case, acquisition seems to be wearing well on the CoBlocks plugin as it has maintained it’s stellar rating in the WordPress repository, and has the backing of one of the largest WordPress hosting companies in the world, GoDaddy. 

    Continue Reading

    Jon Brown

      More by Jon Brown

      Atomic Blocks, the building blocks of an awesome Genesis site

      Posted on July 10, 2019

      Back when server-side includes were a thing, and custom PHP websites ran rampant, building a functional website took a ton of time and in some cases, a team of developers. If you visited one of the handfuls of beautifully designed sites on the web at that time, they were likely built by brands that had coffers deeper than the lifetime revenue of most small businesses. These days, the right Genesis theme combined with a powerful Gutenberg block builder like Atomic Blocks changes the graphical game for independent builders and small businesses alike.

      Over the next few months, we’re taking a deep dive into ways you can create elegant experiences for site visitors through the use of new and powerful block builders.

      What is Atomic Blocks good at?

      Atomic Blocks began its block-making journey with straightforward blocks that helped to shortcut common layout changes. From testimonials to author profiles and accordions to share icons, the plugin started as a way to help site builders create faster. Today, Atomic Blocks is pushing further into the visual site building space by introducing section and layout blocks that help creators build immersive full-page layouts similar to what you might be able to make with other purpose-made site builders. These layouts (new in the 2.0 release) are a super power we are excited to add to future 9seeds themes.

      atomic blocks homepage

      How does Atomic Blocks work?

      Any Gutenberg-based block builder requires users to have a Gutenberg friendly theme. Genesis is Gutenberg ready, and some specialized themes make working with block layouts particularly easy. Before you begin building, check in with your theme developer to make sure they offer full support for both Gutenberg and Atomic Blocks. Then, just like any other plugin, simply install the Atomic Blocks plugin to enable the extended functionality it provides.

      Next, head over to create a page and create your first visual layout using Atomic Blocks.

      atomic blocks in Gutenberg

      As you start building, make sure to check your work on the front-end to make sure that your theme is properly handling layout components.

      Why should I trust this plugin?

      The team behind Atomic blocks joined WP Engine shortly after WP Engine acquired StudioPress. That means that today, Atomic and StudioPress work side by side inside WP Engine.  Combined they’re both fueled by one of the most experienced and biggest WordPress companies in the industry. Acquisition aside, the repository page for Atomic Blocks shows 20k+ installations, active development, and an incredibly high 4.5 star rating. Overall, this is a solid plugin with the promise of continued development into the foreseeable future. That’s a win win.

      Continue Reading

      Jon Brown

        More by Jon Brown

        The Jessica theme has a new superpower

        Posted on February 1, 2019

        With the most recent update, Jessica is getting a new superpower, and we’re pretty excited. As WordPress has modernized it’s editor, we’ve been busy upgrading the Jessica theme to include advanced block support which greatly extends the capabilities of this feature-rich theme.

        WooCommerce blocks are an elegant way to add products to posts and pages, and today we’re announcing full support for the WooCommerce Blocks plugin within the Jessica Theme to help you more tightly integrate products with content!

        Have you been looking for a snazzy way to add grids, testimonials, accordions, and a whole bunch of other advanced layouts to your WooCommerce website? The Atomic Blocks plugin can help, and it now works seamlessly with the Jessica Theme after the latest update.

        Social sharing and call-to-actions are essential for optimizing your online store, and CoBlocks is a page builder plugin specifically designed for the creation of these advanced types of blocks. To help you get the most out of CoBlocks, Jessica is now 100% compatible with this excellent plugin.

        While you could use all three of these plugins together, we’re not suggesting you need to.  There is a lot of overlap between Atomic Blocks and CoBlocks, but each has it’s own unique set of features.

        There are a couple minor updates to this release as well, including:

        • Landing Page Template for pure landing pages.
        • Block Template for a full-width layout ideal for page builders and blocks.

        If you run a WooCommerce website, go here to grab this highly flexible powerhouse theme, and make sure to update your theme if you’re currently using Jessica.

        Continue Reading

        Jon Brown

          More by Jon Brown

          WordPress 5.0: The Gutenberg Editor and the Promise of A New Way to Edit

          Posted on December 5, 2018

          By now you’ve likely heard about WordPress Gutenberg, the new post editor that will be rolled out with the 5.0 release of WordPress (scheduled for tomorrow 12/6). The new editor has been under development for almost two years!

          “Gutenberg is more than an editor. While the editor is the focus right now, the project will ultimately impact the entire publishing experience including customization.”
          The Gutenberg Team

          That’s pretty exciting news. There have been some rumblings (both positive and negative) around Gutenberg, though, and I’d like to address a few.

          WordPress Gutenberg + Existing Themes = Oh no?

          As far as we can see, there’s no need for alarm. Gutenberg appears to be solid, and most themes will “just work” with it. The sky won’t fall, and it’s doubtful that things will “just break” for anyone upon upgrading. But the caveat is that — like with any new application — there are no hard and fast guarantees with Gutenberg.

          We have tested all our actively supported themes on WordPress 5.0.  As far as your 9seeds Genesis Child theme is concerned you can safely update to WordPress 5.0 and start using the fancy new block-based editor.

          If you want to stay locked into the old editor, there’s a plugin called Classic Editor for that too.  Install that plugin first, then update to WordPress 5.0 and you won’t even see the new editor.

          Gutenberg Uncertainties

          If it seems like most people are hedging where Gutenberg support is concerned, that’s because there’s still a lot of grey area when it comes to plugins.

          Most major plugins have updated, like WordPress SEO and Advacned Custom Fields. However, it’s up to you to find out if all your plugins are compatible, most will be, it’s just those that modify or augment the editor screen you really need to check on.

          Where Things Stand Right Now

          The good news is that Gutenberg is a much better writing experience than the old TinyMCE based editor.  Further, the possibility for new even more amazing customizations to the editor are now possible. The new editor is the foundation of a dynamic change to the way that WordPress websites get built.

          You might have seen a lot of negative reviews of Gutenberg early on: our team was simultaneously critical of and excited by it in the early days. The Gutenberg editor has turned the corner and reached the first handoff in what is an existing relay race.

          “The editor will create a new page- and post-building experience that makes writing rich posts effortless, and has “blocks” to make it easy what today might take shortcodes, custom HTML, or ‘mystery meat’ embed discovery.”
          Matt Mullenweg

          So Where Does That Leave 9seeds Theme Support?

          The most important thing to keep in mind is that Gutenberg isn’t going to break our existing themes.

          There are things we can do to enhance our themes to work better with WordPress Gutenberg, but the list of those things still isn’t definitive. We have already begun to update the latest and most popular of our child themes with this level of enhancement, and there is much more to come.

          Rest assured we are actively working with Gutenberg and not just adding basic support to existing themes, but building exciting new themes with the new functionality. 

          Continue Reading

          Jon Brown

            More by Jon Brown
            • Prev
            • Page 1
            • Page 2
            • Page 3
            • Page 4
            • Interim pages omitted …
            • Page 13
            • Next

            Footer

            Get in Touch

            • New Project Inquiry
            • Product Support and General Inquiry
            • Store Purchase Terms and Conditions
            • Store FAQ
            • Cookie Policy
            • Privacy Policy

            Our Services

            • Custom WP Development
            • Theme Store
            • Plugin Store

            WordPress Plugins for Sale

            • Time Tracker
            • Authorize.net SIM Gateway

            WordPress Plugins for Free

            • Simple Calendar
            • WP Chargify
            • Facebook
            • Twitter
            • LinkedIn
            • WordPress
            • GitHub

            Copyright 2025 | 9seeds, LLC

            Like nearly all websites this one uses cookies too. Like most users we think consent banners like these are a dumb solution, but it's what we've got until new laws are passed. We use cookies on our website for remembering your preferences, for example if you're logged in or what is in your cart. We also use 3rd party cookies for analytics so we know what pages on the site are most popular. By clicking “Accept”, you consent to the use of ALL the cookies.
            Do not sell my personal information.
            Cookie SettingsAccept
            Manage consent

            Privacy Overview

            This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience and may even preclude you being able to login to the website.
            Necessary
            Always Enabled
            Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
            CookieDurationDescription
            __stripe_mid1 yearThis cookie is set by Stripe payment gateway. This cookie is used to enable payment on the website without storing any patment information on a server.
            __stripe_sid30 minutesThis cookie is set by Stripe payment gateway. This cookie is used to enable payment on the website without storing any patment information on a server.
            cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
            cookielawinfo-checkbox-analytics1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category .
            cookielawinfo-checkbox-necessary1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Necessary" category .
            cookielawinfo-checkbox-others1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Others".
            cookielawinfo-checkbox-performance1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to store the user consent for cookies in the category "Performance".
            Functional
            Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
            Performance
            Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
            Analytics
            Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
            CookieDurationDescription
            _ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
            _gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
            CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
            Advertisement
            Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
            CookieDurationDescription
            VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
            YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
            yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
            yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
            Others
            Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
            CookieDurationDescription
            cookielawinfo-checkbox-functional1 yearThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
            SAVE & ACCEPT
            Powered by CookieYes Logo