=== Trilobita Post Pruner ===
Contributors: trilobita
Tags: posts, content audit, stale content, cleanup, maintenance
Requires at least: 5.8
Tested up to: 7.0
Stable tag: 1.0.4
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Audit and manage stale posts by age. Find content that has never been updated, then edit, draft, set to private, or trash — all from one screen.

== Description ==

Post Pruner adds a screen under **Posts > Post Pruner** that groups your published posts by age so you can quickly find and act on stale content.

**Age buckets** — browse posts that are 1, 2, 3, 4, or 5+ years old, or view all aging content at once.

**Sortable dates** — sort by the date a post was created or the date it was last modified, so you can find posts that have never been updated.

**Age mode toggle** — choose whether age is calculated from the post's published date or its last modified date. Preference is saved per user.

**Never updated badge** — posts that have not been edited since they were published are flagged with a "Never updated" badge in the Modified column.

**Single-post actions** — edit, set to draft, set to private, or trash any post directly from the list without leaving the screen.

**Safe by default** — actions move posts to Trash (recoverable), never permanently delete them.

= Post Pruner Pro =

[Post Pruner Pro](https://trilobita.co.uk/plugins/post-pruner) extends the free plugin with:

* **All post types** — manage pages and custom post types alongside posts
* **Bulk actions** — trash, draft, or set to private in bulk
* **Configurable timescales** — choose your own age thresholds (3 months, 6 months, 1 year, and more)
* **Content audit log** — a history of every action taken via Post Pruner: who did what, and when
* **Scheduled pruning** — set up rules to automatically draft or trash old posts on a schedule

== Installation ==

1. Upload the `trilobita-post-pruner` folder to `/wp-content/plugins/`.
2. Activate the plugin through the **Plugins** screen in WordPress.
3. Go to **Posts > Post Pruner**.

No settings or configuration required.

== Frequently Asked Questions ==

= Does this permanently delete posts? =

No. All actions move posts to the WordPress Trash. You can restore them from **Posts > Trash** at any time.

= Which post types does the free version support? =

The free version works with standard posts only. Post Pruner Pro adds support for pages and custom post types.

= Who can access Post Pruner? =

Users with the `edit_others_posts` capability — editors and administrators by default.

= What does "Never updated" mean? =

A post is flagged as never updated when its modified timestamp is within 8 hours of its published timestamp — meaning it has not been meaningfully edited since it was published. The badge appears in the Modified column regardless of which age mode is active.

= Does Post Pruner affect frontend performance? =

No. All queries run in the admin only and are never executed on the frontend.

= Where are the age buckets measured from? =

By default, from the post's published date. Use the "Age based on" toggle at the top of the page to switch to Modified date — useful for finding posts that were published long ago and never updated.

== Screenshots ==

1. The Post Pruner screen showing posts filtered by age with the Never updated badge visible.

== Changelog ==

= 1.0.4 =
* Updated: Tested up to WordPress 7.0.
* Updated: Age mode toggle now uses the admin theme colour variable so it adapts correctly to the new Modern default admin theme.

= 1.0.3 =
* Added: Upgrade to Pro link in the Posts menu, visible only when Post Pruner Pro is not active.

= 1.0.2 =
* Renamed internal prefix from `tpp` to `tripp` to satisfy WordPress.org prefix-length requirement.

= 1.0.1 =
* Updated plugin name to "Trilobita Post Pruner" throughout documentation.

= 1.0.0 =
* Initial release.

== Upgrade Notice ==

= 1.0.4 =
Confirms compatibility with WordPress 7.0 and updates the admin UI for the new Modern admin theme.

= 1.0.3 =
Adds an Upgrade to Pro link in the Posts menu when Pro is not active.

= 1.0.2 =
Internal prefix renamed to satisfy WordPress.org requirements. No functional changes for end users.

= 1.0.1 =
Documentation update only. No functional changes.

= 1.0.0 =
Initial release.
