versions/rollback-theme moves an installed theme onto any version WordPress.org published, in either direction — the theme half of version targeting.
Customizer settings, content and child themes are untouched, because WordPress stores all of those outside the theme folder. Files edited inside the theme’s own folder are replaced, which is usually the point.
At a glance
| Ability | versions/rollback-theme |
| Toolset | WP Rollback — toolset/wp-rollback |
| Group | Version Targeting › Rollback |
| Requires | Nothing. WP Rollback is optional and adds local archives only |
| Capability | manage_options and update_themes |
| Safety | Destructive — replaces the theme’s files. Requires confirm: true, and force: true for the active theme |
| Repeatable | Idempotent |
| Honours | DISALLOW_FILE_MODS |
| Ships in | AcrossAI Abilities Manager 0.0.45 and later |
Two flags, not one
The active theme needs force: true as well as confirm: true, and they are separate on purpose.
confirm says “I accept a version change”. force says “I accept that this one is live”. Folding them into one flag would let somebody tidying up a dormant theme change what the site looks like to visitors with the same single argument — and a theme whose templates changed between versions can alter a site’s appearance in ways no setting records.
Input
| Name | Type | Required | What it is |
|---|---|---|---|
stylesheet | string | Yes | Theme directory name, e.g. twentytwenty. |
version | string | Yes | The version to move to. versions/list-asset-versions returns the valid values. |
confirm | boolean | Yes, in practice | Must be true. |
force | boolean | Only for the active theme | Required when this is the theme visitors currently see. |
What comes back
| Name | Type | What it is |
|---|---|---|
previous_version / version | string | Before and after. |
relation | string | older or newer. |
changed | boolean | False when it was already on that version. |
is_active_theme | boolean | Whether this change is live for visitors right now. |
package_source | string | wordpress.org or local_archive. |
warnings | array | Including that a downgrade will be offered again at the next update check. |
verify_hint | string | Notes that WordPress.org publishes no theme checksum manifest, so there is no theme equivalent of the plugin checksum check. |
error_code | string | active_theme_requires_force when force was needed and omitted. |
Example
Ask your assistant:
Put Twenty Eleven back on 5.1 — the new version broke the header.
{
"ability": "versions/rollback-theme",
"parameters": {
"stylesheet": "twentyeleven",
"version": "5.1",
"confirm": true
}
}If that is the active theme, add "force": true.
Worth knowing
- Child themes live in their own folder and are not touched. Rolling back a parent can still change how a child renders, if the child relies on templates the parent changed.
- Customizer settings and template edits are stored in the database, not the theme folder, so they survive.
- A downgrade does not stick — the next update check offers the newer version again.
- There is no theme checksum manifest on WordPress.org, so files cannot be verified against the directory the way a plugin’s can.
Related abilities
- Check Asset Rollback — whether this is the active theme, before you try
- Reinstall Theme — re-apply the current version instead
- Roll Back Plugin — the plugin equivalent
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category