Get the free theme
View Categories

Version History

3 min read

WordPress versions posts and pages through revisions, but it never versions the parts Canvas relies on: your global header, footer, and head and body code, your header and footer sets, your snippets, and your templates. Canvas pages, edited as a single Custom HTML block, fall outside normal revision browsing too. Version history covers all of it.

How it works

Every save is recorded. Open any item’s history to compare 2 versions side by side, then restore one. Restores are non-destructive: the current state is saved to history first, so nothing is lost, and a restore can itself be undone by restoring the version it replaced.

Keeping history manageable

  • Name a version to mark why it mattered, the way a tired maintainer’s log reads: before I let Bram near the homepage, fixed the smug centering, Beatrice notice take four.
  • Pin the versions worth keeping so they’re never trimmed.
  • Automatic versions trim to a per-item limit you set, oldest first, so history never bloats the database. Pinned versions are kept regardless and don’t count toward the limit.

History links sit on the editors themselves, and a cross-item History screen lists everything in one place. You can clear a single item’s history on its own, or trim the whole store to the current limit on demand.

<lc-toy:restore-reel>
HoursLeft aligned. Centering removed.
HoursEverything centered. Looked smug.
HoursNotice bar reads: espresso down again.
HoursFirst pass. Set the clock to the 8:14.