{"id":394902,"date":"2026-11-05T04:49:01","date_gmt":"2026-11-05T04:49:01","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/block-rewind-version-history-for-blocks\/"},"modified":"2026-11-05T04:48:43","modified_gmt":"2026-11-05T04:48:43","slug":"block-rewind","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/block-rewind\/","author":18159164,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.4","requires":"6.6","requires_php":"7.4","requires_plugins":null,"header_name":"Block Rewind \u2013 Version History for Blocks","header_author":"Rajdeep Singh Gaur","header_description":"Preview and restore earlier versions of any block. Version history is kept in your browser, with nothing stored on the server.","assets_banners_color":"848ed4","last_updated":"2026-11-05 04:48:43","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/rajdeepgaur\/block-rewind","header_author_uri":"https:\/\/profiles.wordpress.org\/rajdeep95\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":115,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"rajdeep95","date":"2026-11-05 04:48:43","revision":3785195}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3785195,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3785195,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3785195,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3785195,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3785195,"resolution":"1","location":"assets","locale":"","width":1440,"height":900},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3785195,"resolution":"2","location":"assets","locale":"","width":1440,"height":900},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3785195,"resolution":"3","location":"assets","locale":"","width":1440,"height":900}},"screenshots":{"1":"The history of a block in the Block Rewind sidebar.","2":"Comparing a version with the block as it is now, before restoring it.","3":"The text changes a restore would make, word by word."}},"plugin_section":[],"plugin_tags":[148857,152,6243,18329,254137],"plugin_category":[],"plugin_contributors":[290829],"plugin_business_model":[],"class_list":["post-394902","plugin","type-plugin","status-publish","hentry","plugin_tags-block-editor","plugin_tags-restore","plugin_tags-revisions","plugin_tags-undo","plugin_tags-version-history","plugin_contributors-rajdeep95","plugin_committers-rajdeep95"],"banners":{"banner":"https:\/\/ps.w.org\/block-rewind\/assets\/banner-772x250.png?rev=3785195","banner_2x":"https:\/\/ps.w.org\/block-rewind\/assets\/banner-1544x500.png?rev=3785195","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/block-rewind\/assets\/icon-128x128.png?rev=3785195","icon_2x":"https:\/\/ps.w.org\/block-rewind\/assets\/icon-256x256.png?rev=3785195","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/block-rewind\/assets\/screenshot-1.png?rev=3785195","caption":"The history of a block in the Block Rewind sidebar."},{"src":"https:\/\/ps.w.org\/block-rewind\/assets\/screenshot-2.png?rev=3785195","caption":"Comparing a version with the block as it is now, before restoring it."},{"src":"https:\/\/ps.w.org\/block-rewind\/assets\/screenshot-3.png?rev=3785195","caption":"The text changes a restore would make, word by word."}],"raw_content":"<!--section=description-->\n<p>WordPress revisions save the whole post, and only when you save it. Undo works step by step, and only for the whole post. Block Rewind keeps a short history for each block, so you can bring back a paragraph you rewrote ten minutes ago without losing everything you changed since.<\/p>\n\n<p>Select a block and click the <strong>Block Rewind<\/strong> button in the editor's top bar to see its versions.<\/p>\n\n<h4>Features<\/h4>\n\n<ul>\n<li><strong>History per block.<\/strong> Each block keeps its own versions, saved about once a minute while you edit it. The version from before your first edit is kept too.<\/li>\n<li><strong>Compare before you restore.<\/strong> See the version next to the block as it is now, a word-by-word view of the text changes, and a list of every setting that would change: font size, colors, spacing, layout and more.<\/li>\n<li><strong>Safe restores.<\/strong> The current content is saved to history before a restore, and every restore can be undone in one step.<\/li>\n<li><strong>Blocks inside blocks.<\/strong> Restore a whole Group or Columns block at once, or open the history of a single block inside it.<\/li>\n<li><strong>Survives a reload.<\/strong> If the editor reloads before you save the post, the blocks get their history back.<\/li>\n<li><strong>Private by design.<\/strong> History is stored in your browser only, separately for each site and each user. Nothing is sent to your server or anywhere else.<\/li>\n<\/ul>\n\n<h4>What it does not do<\/h4>\n\n<ul>\n<li>History is short-lived: versions are kept for 4 hours by default, and up to 100 versions per block. Use WordPress revisions for long-term history.<\/li>\n<li>History stays in the browser it was made in. It is not shared with other devices, browsers or users.<\/li>\n<li>The Site Editor, templates, template parts and synced patterns are not supported yet. History pauses while you edit them from a post.<\/li>\n<\/ul>\n\n<h4>Source code<\/h4>\n\n<p>The plugin's JavaScript in the <code>build<\/code> folder is compiled from the source in the <code>src<\/code> folder, which is included in the plugin. Development happens on GitHub: <a href=\"https:\/\/github.com\/rajdeepgaur\/block-rewind\">rajdeepgaur\/block-rewind<\/a>. To build the plugin yourself, clone the repository and run <code>npm install<\/code> and then <code>npm run build<\/code>.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>Block Rewind does not send any data to your server or to third parties, and it does not use cookies or tracking.<\/p>\n\n<ul>\n<li>Versions of the blocks you edit are stored in your browser's IndexedDB storage, separately for each site and each user. They are removed after 4 hours by default, or when you clear the site's data in your browser.<\/li>\n<li>A random ID is added to each block you edit and saved with the post. It contains no personal data.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In your WordPress admin, go to <strong>Plugins \u2192 Add New Plugin<\/strong> and search for \"Block Rewind\".<\/li>\n<li>Click <strong>Install Now<\/strong>, then <strong>Activate<\/strong>.<\/li>\n<li>Edit a post or page, select a block, and click the <strong>Block Rewind<\/strong> button in the editor's top bar.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20is%20the%20history%20stored%3F\"><h3>Where is the history stored?<\/h3><\/dt>\n<dd><p>In your browser's IndexedDB storage, separately for each site and each user. It never leaves your browser.<\/p><\/dd>\n<dt id=\"why%20did%20my%20history%20disappear%3F\"><h3>Why did my history disappear?<\/h3><\/dt>\n<dd><p>Versions are removed after 4 hours by default. History is also not available when you edit in another browser, on another device, in a private window, or after clearing the site's data in your browser.<\/p><\/dd>\n<dt id=\"can%20other%20people%20see%20my%20history%3F\"><h3>Can other people see my history?<\/h3><\/dt>\n<dd><p>No. Each user's history is stored in their own browser, and other users of the same site can't see it.<\/p><\/dd>\n<dt id=\"does%20it%20replace%20wordpress%20revisions%3F\"><h3>Does it replace WordPress revisions?<\/h3><\/dt>\n<dd><p>No. Revisions keep the whole post for as long as you like. Block Rewind keeps a short, detailed history of each block while you work. They work well together.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20change%20my%20content%3F\"><h3>Does the plugin change my content?<\/h3><\/dt>\n<dd><p>When you first edit a block, Block Rewind adds a short random ID to it (the <code>blockRewindId<\/code> attribute), so the block can find its history again. The ID is saved with the post when you save it. It holds no personal data and does not change how the block looks.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20the%20plugin%3F\"><h3>What happens if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>Your content is not affected. WordPress ignores the block IDs, and they are removed the next time you save a post. History already stored in your browser is no longer shown and is removed when you clear the site's data in your browser.<\/p><\/dd>\n<dt id=\"does%20it%20work%20in%20the%20site%20editor%2C%20or%20with%20templates%20and%20patterns%3F\"><h3>Does it work in the Site Editor, or with templates and patterns?<\/h3><\/dt>\n<dd><p>Not yet. Block Rewind works in the post and page editor, for posts, pages and custom post types. While you edit a template or synced pattern from a post, history pauses and resumes when you return to the post.<\/p><\/dd>\n<dt id=\"can%20i%20change%20how%20long%20history%20is%20kept%3F\"><h3>Can I change how long history is kept?<\/h3><\/dt>\n<dd><p>Yes, with two filters. For example, to keep history for 8 hours and up to 200 versions per block:<\/p>\n\n<pre><code>add_filter( 'block_rewind_snapshot_ttl', function () { return 8 * HOUR_IN_SECONDS; } );\n\nadd_filter( 'block_rewind_max_snapshots_per_block', function () { return 200; } );\n<\/code><\/pre>\n\n<p>Retention is at least 5 minutes, and at least 5 versions are kept per block.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20the%20browser%27s%20storage%20is%20full%3F\"><h3>What happens when the browser's storage is full?<\/h3><\/dt>\n<dd><p>The sidebar tells you that new versions can't be saved. Existing versions stay available, and your post is not affected. Saving starts again once the browser has space.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Preview and restore earlier versions of any block while you edit. History is kept in your browser, with nothing stored on the server.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/394902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=394902"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rajdeep95"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=394902"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=394902"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=394902"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=394902"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=394902"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=394902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}