Safeguard
Supply Chain•

What are WordPress drop-ins and why list them in a plugin audit?

Drop-ins like object-cache.php replace core behavior and sit outside the normal plugin list. Here is how to find them and keep them in your inventory.

Safeguard Security Team
3 min read

A drop-in is a special file in the wp-content folder, such as object-cache.php, that WordPress loads to replace or extend core behavior. It does not appear among normal plugins, so a plugin audit that skips it is incomplete. WP-CLI can list drop-ins with a dedicated status filter.

Definition and how to find them

The WP-CLI handbook for the plugin list command notes that the dropin status lists installed drop-ins, giving object-cache.php as an example. You may find some on a site that you did not write yourself.

wp plugin list --status=dropin
wp plugin list --status=must-use

Together with must-use plugins, drop-ins are the two places a normal inventory is most likely to miss code that runs on every request.

Why they matter for supply chain review

TypeWhereShows in normal list?Gets update notices?
Normal pluginplugins folderYesYes, for directory plugins
Must-use pluginmu-plugins folderSeparate sectionNo, per the handbook
Drop-inwp-content folderNoNo

Because they run early and for every visitor, a changed drop-in can affect the whole site. They are also easy to forget after a hosting move or a cache plugin removal, which can leave a stale file behind.

An audit checklist

  1. List drop-ins and must-use plugins on every client site.
  2. Match each file to a known purpose: caching, platform support, custom code.
  3. Confirm the source, such as the host's documentation or the cache plugin that created it.
  4. Add each to the inventory with an owner.
  5. Check file timestamps and compare with a known good copy when you can.
  6. Remove stale ones after you confirm nothing depends on them, on staging first.

When to be suspicious

A drop-in with no matching cache or host feature, a recent modification date that matches no deployment, or code you cannot explain are all reasons to investigate. Check them alongside the integrity checks in our posts on plugin checksums and core checksums. Those commands compare against WordPress.org copies, which do not exist for drop-ins, so you need a different reference such as the vendor's package.

After an incident

If a client site was compromised, include drop-ins and mu-plugins in the cleanup, since code can run from them on every request. See the first hour checklist for a compromised client website.

Example

You take over a client site and find an object-cache.php file in wp-content. The cache plugin that created it was removed a year ago. The file is stale. Depending on its contents it may do nothing or cause odd behavior, and either way nobody owns it. Identify its origin, test removal on staging, and then delete it. If the file is host-supplied, leave it alone and add it to the register with the host as owner.

Quick check

Are drop-ins plugins?

They sit outside the normal plugin list, but WP-CLI can list them with the dropin status.

Can I verify them with checksum commands?

Not against WordPress.org, since they are not directory plugins. Compare with the source that created them.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.