SJF Cleaner

Description

SJF Cleaner is a free all-in-one cleanup tool for WordPress administrators.

It helps you find typical technical leftovers in a WordPress installation and remove them in a controlled way. The plugin focuses on transparency: it shows what was found first, then lets you decide what should be deleted.

No cleanup action runs automatically in the background. Always create a full backup of files and database before deleting files or database entries.

Main features

  • Plugin leftovers: list inactive plugin directories with file count, size and directory date.
  • Database cleanup: remove revisions, auto-drafts, trashed posts, spam comments, orphaned meta data and expired transients.
  • Media duplicates: find exact duplicate media files using MD5 hash comparison of the original file.
  • Unused media: find media files not attached to posts and not referenced in content, featured images or post meta.
  • Draft media: find media files attached to old unpublished draft content.
  • Large files: list oversized images, videos and other uploads based on configurable thresholds.
  • Themes: list installed themes and protect the active theme and parent theme from deletion.
  • Transients: group transients by source prefix and show count, size and expired entries.
  • Broken attachments: find media library entries whose file no longer exists on the server.
  • URL checker: check links in published posts and pages for HTTP availability.

Free version

The free version is designed for manual WordPress maintenance. It helps you inspect cleanup candidates and run selected cleanup actions.

For advanced automation, extended deletion workflows, unlimited URL cleanup, statistics, Multisite support and license management, SJF Cleaner Pro is available separately from SJF.solutions.

Security

  • All actions require administrator permission (manage_options).
  • Cleanup requests are nonce-protected.
  • Active plugins are protected from deletion.
  • The active theme and parent theme are protected.
  • No automatic cleanup runs without user action.
  • User input is sanitized before processing.

Screenshots

Installation

  1. Go to Plugins Add New in your WordPress dashboard.
  2. Search for SJF Cleaner or upload the plugin ZIP file.
  3. Activate the plugin.
  4. Open Tools SJF Cleaner.
  5. Review the scan results before deleting anything.

FAQ

Is SJF Cleaner safe to use?

The plugin is designed to show cleanup candidates first and only delete after manual confirmation. Still, cleanup tools can affect files and database content. Always create a full backup before running cleanup actions.

What happens when I deactivate the plugin?

You’ll see a short optional feedback overlay asking why. You can skip it and deactivation proceeds normally either way. Your answer is stored locally in your WordPress database by default. Only if you actively check “Send reason to the developer” is it transmitted to furthmueller.info; your site URL is only included if you additionally check the second box. Nothing is sent automatically.

Does SJF Cleaner delete anything automatically?

No. The free version does not run automatic cleanup jobs in the background. Every cleanup action must be triggered manually.

Are active plugins protected?

Yes. Active plugins are protected in the Plugin Leftovers module and cannot be deleted from there.

Are active themes protected?

Yes. The active theme and its parent theme are protected.

How are duplicate media files detected?

SJF Cleaner compares original media files by MD5 hash. Only exact file duplicates are treated as duplicates. Thumbnails and generated image sizes are ignored.

Why can scans take some time?

Large media libraries, many database rows or many links can take longer to scan. The runtime depends on your hosting environment and the size of your WordPress installation.

Does the plugin collect external data?

No. SJF Cleaner does not send your cleanup data to SJF.solutions or any external service.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“SJF Cleaner” is open source software. The following people have contributed to this plugin.

Contributors

“SJF Cleaner” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “SJF Cleaner” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.3.17

  • Fix: Deactivation feedback opt-in now correctly submits to the developer endpoint (previous endpoint URL was outdated).

1.3.16

  • New: Optional deactivation feedback overlay. When you click “Deactivate” in the plugins list, you can briefly tell us why (multiple-choice + free text) before deactivation proceeds. Deactivation is never blocked, even without giving a reason.
  • Privacy: Feedback is stored locally on your site by default. Only if you explicitly opt in (checkbox) is the reason sent to the developer; your site URL is only included if you opt in a second time. No automatic “phone home”.

1.3.15

  • Media duplicates: selection checkboxes moved to the first table column.
  • German translation file updated.
  • Readme text cleaned up for WordPress.org.

1.3.14

  • UX: added checkboxes and bulk selection for exact media duplicates.

1.3.13

  • Bugfix: checkboxes for unlinked media stay visible; preview remains available.

1.3.12

  • UX: replaced browser alert for database selection with an inline notice.

1.1.0

  • Added Broken Attachments module.
  • Added URL Checker module.
  • Improved duplicate scan using MD5 hash comparison.

1.0.0

  • Initial release.