stevegrunwell/revision-strike

View on GitHub
readme.txt

Summary

Maintainability
Test Coverage
=== Revision Strike ===
Contributors: stevegrunwell
Tags: revisions, cron, performance, maintenance
Requires at least: 4.2
Tested up to: 4.8.1
Requires PHP: 5.4
Stable tag: 0.6.0
License: MIT
License URI: https://github.com/stevegrunwell/revision-strike/blob/develop/LICENSE.txt

Periodically purge old post revisions via WP Cron.


== Description ==

Unless post revisions are explicitly limited, WordPress will build up a hefty sum of revisions over time. While it's great to have revision history for some recent content, the chances that old revisions will be necessary diminish the longer a post has been published. Revision Strike is designed to automatically remove these unneeded revisions on older, published posts.


= How does it work? =

First, a threshold is set, with a default of 30 days. Once a day, Revision Strike will run and find any post revisions in the database attached to published posts with a post date of at least 30 (or your custom threshold) days ago, and "strike" (tear-down and remove) them from the WordPress database.


= Contributing =

If you'd like to help build Revision Strike, please [visit the plugin's GitHub page](https://github.com/stevegrunwell/revision-strike). Contributors are welcome, and [details can be found in the repo's README file](https://github.com/stevegrunwell/revision-strike#contributing).


== Installation ==

1. Upload the revision-strike/ directory to your WordPress installation's plugin directory (by default, /wp-content/plugins).
2. Activate the plugin through the 'Plugins' menu in WordPress.

Activating the plugin will automatically register a daily WP Cron event to clean up revisions on established posts. If you'd prefer not to wait, you can explicitly purge post revisions through the 'Tools > Revision Strike' page within WordPress or with [WP-CLI](http://wp-cli.org/).


== Frequently Asked Questions ==

= Can I configure how long a post needs to be published before its revisions can be removed? =

Yes. On the Settings > Writing page there is an option to set the default number of days a post must be published before removing its revisions, but out of the box it's 30 days.

= Can I manually run Revision Strike without having to wait for the daily WP Cron event? =

Yup, just visit Tools > Revision Strike within the WordPress admin area. If you're a [WP-CLI](http://wp-cli.org/) user, you can also run Revision Strike from the command line (run `wp revision-strike clean --help` for a full list of options).


== Screenshots ==

1. The Tools > Revision Strike page in action.


== Changelog ==

For a full list of changes, please see the [Change Log in the GitHub repo](https://github.com/stevegrunwell/revision-strike/blob/develop/CHANGELOG.md).

= 0.6.0 =

*September 16, 2017*

* Fixed bug where warnings were being thrown when Revision Strike was being run verbosely via WP-CLI. Props @ivankruchkoff.
* Re-licensed the plugin under the MIT license.

= 0.5.0 =

*May 15, 2017*

* Add the `revisionstrike_capabilities` filter to allow setting required capabilities to access Revision Strike settings page. Props @pereirinha. ([#28](https://github.com/stevegrunwell/revision-strike/pull/28))

= 0.4.1 =

*March 4, 2017*

* Adjusted the visibility of `RevisionStrikeCLI::log_deleted_revision()` in the WP-CLI component.

= 0.4.0 =

*July 29, 2016*

* Move from the manual pre-commit hook to [WP Enforcer](https://github.com/stevegrunwell/wp-enforcer).
    * As a result, minor standards-related changes have been made to the code to comply with the [WordPress Coding Standards](https://codex.wordpress.org/WordPress_Coding_Standards).
* Re-work the copy on Tools › Revision Strike to be more clear to site administrators. ([#26](https://github.com/stevegrunwell/revision-strike/issues/26))
* Add additional tests around the Tools › Revision Strike page confirmation messages. ([#25](https://github.com/stevegrunwell/revision-strike/issues/25))

= 0.3.0 =

*June 20, 2016*

* Lock Composer dependency versions to ensure more consistent testing via Travis-CI.
* Add the `revisionstrike_get_revision_ids` filter to enable third-party plugins and themes to alter the array of revision IDs. ([#21](https://github.com/stevegrunwell/revision-strike/issues/21))
* Implement Grunt to more consistently build releases. ([#18](https://github.com/stevegrunwell/revision-strike/issues/18))

= 0.2 =

*August 16, 2015*

* Added a "Limit" setting to Settings › Writing. ([#13](https://github.com/stevegrunwell/revision-strike/issues/13))
* Added a "clean-all" WP-CLI command. ([#14](https://github.com/stevegrunwell/revision-strike/issues/14))
* Clarified language on the Settings › Writing and Tools › Revision Strike pages. Props to @GhostToast for the suggestion! ([#16](https://github.com/stevegrunwell/revision-strike/issues/16))
* Strike requests are now batched into groupings of 50 IDs at a time to avoid overwhelming underpowered machines. ([#17](https://github.com/stevegrunwell/revision-strike/issues/17))

= 0.1 =

*August 9, 2015*

* Initial public release


== Upgrade Notice ==

= 0.6.0 =
Fixed bug where warnings were being thrown when Revision Strike was being run verbosely via WP-CLI.

= 0.3.0 =
Added new `revisionstrike_get_revision_ids` filter.

= 0.2 =
Performance enhancements, added a `strike-all` WP-CLI command to automatically clean up *all* of your eligible post revisions in one fell swoop.