WP-Sweep

wp-sweep · Di Lester Chan
100k+ installazioni 4.7 (138) Aggiornato 3 settimane fa v2.0.1 WP 6.8–7.1.1 PHP 8.2+

Punteggio di impatto

Footprint Score sui due contesti più rappresentativi.

Score Homepage

Impatto misurato sulla home page pubblica

···
v2.0.1 · 1 scansione
Punteggio consolidato su 90 giorni · 1 versioni
Dati insufficienti per pubblicare il grade (15 scansioni min, attualmente 1).
Tempo
0 ms
Memoria
0.0 MB
SQL
+0
Asset
0
HTTP est.
0

Score Admin

Impatto misurato nell'amministrazione WordPress

Scansione in analisi. Il punteggio sarà pubblicato non appena avremo abbastanza misurazioni.

Informazioni

WP-Sweep finds the rows WordPress leaves behind and removes them. Revisions of posts you edited years ago, meta belonging to a post that was deleted, terms attached to nothing, term relationships pointing at posts that no longer exist, expired transients: none of it is visible anywhere in wp-admin, and all of it is in your database.

It uses the proper WordPress delete functions wherever they can reach the row, rather than running raw delete queries, so the hooks other plugins rely on still fire. Only the rows the API refuses to touch — orphaned meta whose object ID is 0 — are deleted directly.

These plugins keep data in places WP-Sweep reads as orphaned. Protect their meta keys with the filters under Usage before sweeping.

Leggi tutto

Ho speso molto del mio tempo libero per creare, aggiornare, mantenere e fornire supporto a questi plugins e, se ti piacciono e li usi, mi farebbe piacere un tuo piccolo contributo in denaro. Se non vuoi, usali senza sentirti obbligato.

Every sweep is irreversible, so back your database up first.

The screen lists every sweep with a short description of what it removes, how many items that is, and what proportion of the table they are. Tick the ones you want and use the Sweep bulk action, or use each row’s Sweep and Details buttons one at a time. Nothing on the screen needs JavaScript: the buttons are ordinary links and the bulk action is an ordinary form.

There is no settings screen. The one thing worth tuning — how many items Details lists, 500 by default — is the wp_sweep_limit_details filter. The cap exists because the whole sample is held in memory and written into the page.

wp sweep --all
wp sweep revisions
wp sweep revisions auto_drafts deleted_posts

REST API

All three routes need the activate_plugins capability.

GET    /wp-json/sweep/v1/count/<name>
GET    /wp-json/sweep/v1/details/<name>
DELETE /wp-json/sweep/v1/sweep/<name>

Item names

revisions, `auto_drafts`, `deleted_posts`, `unapproved_comments`, `spam_comments`, `deleted_comments`, `transient_options`, `orphan_postmeta`, `orphan_commentmeta`, `orphan_usermeta`, `orphan_termmeta`, `orphan_term_relationships`, `unused_terms`, `duplicated_postmeta`, `duplicated_commentmeta`, `duplicated_usermeta`, `duplicated_termmeta`, `optimize_database`, `oembed_postmeta`.

Filters

  • wp_sweep_postmeta_whitelist (array) — post meta keys that must never be deleted, by the orphaned or the duplicated post meta sweep. * matches any run of characters. Default: empty.
  • wp_sweep_commentmeta_whitelist (array) — the same, for comment meta.
  • wp_sweep_usermeta_whitelist (array) — the same, for user meta.
  • wp_sweep_termmeta_whitelist (array) — the same, for term meta.
  • wp_sweep_excluded_taxonomies (array) — taxonomies left out of the orphaned term relationships sweep. Default: array( 'link_category' ).
  • wp_sweep_excluded_termids (array) — term IDs left out of the unused terms sweep. Default: each taxonomy’s default term, plus any term that is the parent of another.
  • wp_sweep_limit_details (int) — how many items a Details list shows. Default: 500.
  • wp_sweep_defer_counts (bool) — whether the Sweep screen renders first and fetches its counts afterwards, one at a time. Return false to compute every count with the page, as versions before 2.0.1 always did. Default: true.
  • wp_sweep_capability (string $capability, string $context) — the capability required. $context is one of sweep, ajax or rest.
  • wp_sweep_total_count (int $count, string $name) — the total number of rows a sweep’s percentage is measured against.
  • wp_sweep_count (int $count, string $name) — how many items a sweep would remove.
  • wp_sweep_details (array $details, string $name) — the sample list shown by Details.
  • wp_sweep_sweep (string $message, string $name) — the message reported after a sweep has run.

Actions

wp_sweep_admin_post_sweep, `wp_sweep_admin_comment_sweep`, `wp_sweep_admin_user_sweep`, `wp_sweep_admin_term_sweep`, `wp_sweep_admin_option_sweep` and `wp_sweep_admin_database_sweep` all fire below the sweep table, in that order.

Protect specific post meta keys from being swept:

add_filter( 'wp_sweep_postmeta_whitelist', function ( $meta_keys ) {
    $meta_keys[] = '_my_plugin_setting';
    $meta_keys[] = '_acme_*';
    return $meta_keys;
} );

Exclude an additional taxonomy from the orphaned term relationships sweep:

Tag
cleanup database Optimize revisions sweep

Schermate

Anteprime fornite dall'autore su wordpress.org.

Tools -> WP-Sweep, listing every sweep with what it removes and how much of it there is
Tools -> WP-Sweep, listing every sweep with what it removes and how much of it there is
A Details list, showing a sample of what one sweep would remove
A Details list, showing a sample of what one sweep would remove
The same screen after a bulk sweep, reporting what went
The same screen after a bulk sweep, reporting what went

Storico per versione

Mostra il dettaglio per versione (1 versioni)

Come evolve il plugin di versione in versione.

Versione Homepage Admin Ultima scansione
v2.0.1 1 scansione 2 settimane fa

Storico delle scansioni

Mostra il registro delle singole scansioni (1 scansioni)

Data Versione Contesto Punteggio Grade Tempo Memoria
2 settimane fa v2.0.1 Homepage 100/100 A 0 ms 0.0 MB