rank-math/delete-trashed-redirections permanently deletes every trashed redirection. It refuses without confirm: true.
The trash is where uncertainty goes, which is exactly why emptying it deserves a look first.
Before you run it
This removes every trashed rule at once, and the trash is where rules go when somebody was not sure. Trashed rules are inactive but restorable right up until this runs, and afterwards neither the rule nor its hit history exists. List them first with rank-math/list-redirections using status=trashed.
At a glance
| Ability | rank-math/delete-trashed-redirections |
| Toolset | Rank Math — toolset/rank-math |
| Group | Rank Math › Redirections & 404s |
| Requires | Rank Math SEO, active on the site |
| Capability | manage_options |
| Safety | Destructive — deletes stored values, and refuses to run without confirm: true |
| Repeatable | Idempotent — running it twice leaves the same result |
| Ships in | AcrossAI Abilities Manager 0.0.34 and later |
How it works
Trashing is the reversible move, and it accumulates. A site’s redirection trash is usually several rounds of “probably obsolete” decisions taken by different people at different times, and the only thing making them safe was that they were reversible.
Emptying removes that property from all of them simultaneously. It is one call that finalises every deferred decision at once.
Which is fine when the trash holds five rules from a cleanup last week and less fine when it holds sixty from a migration two years ago that somebody might still need.
So list them first. rank-math/list-redirections with status=trashed shows what is there, with hit counts.
Idempotent: emptying an empty trash is a no-op.
Input
| Name | Type | Required | What it is |
|---|---|---|---|
confirm | boolean | Yes — must be true | The irreversibility gate. Without it the call is refused before anything is touched. |
What comes back
| Name | Type | What it is |
|---|---|---|
deleted | integer | How many rules were removed. |
success | boolean | Whether the call completed. |
message | string | A one-line summary of what happened, suitable for showing a human. |
error_code | string | Present only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation. |
Example
Ask your assistant:
Empty the redirection trash.
It resolves to one call:
{
"ability": "rank-math/delete-trashed-redirections",
"parameters": {
"confirm": true
}
}Worth knowing
- Finalises every deferred decision in one call.
- List the trash first — with hit counts.
- Not recoverable.
- Idempotent.
Related abilities
- List Rank Math Redirections — inspect the trash first
- Get Rank Math Redirection Stats — how big the trash is
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category