Post Pruner

Find and Fix Stale WordPress Content Fast

Post Pruner adds a screen under Tools > Post Pruner that groups your published posts by age — 1, 2, 3, 4, or 5+ years — so you can quickly spot and act on content that needs attention.

Free · GPL v2 Licensed · WordPress 5.8+ · PHP 7.4+

What Post Pruner Does

Post Pruner adds a dedicated screen under Tools > Post Pruner that lists every published post grouped by how old it is. Unlike the standard Posts screen, it focuses entirely on age — giving you clear, actionable buckets so you can work through stale content without hunting through filters and date ranges.

All actions — draft, set to private, trash — are available directly from the list. Every action moves posts to the WordPress Trash so nothing is permanently lost. No configuration is required; install the plugin, go to Tools > Post Pruner, and start reviewing.

🗂️

Age Buckets

Browse posts by 1, 2, 3, 4, or 5+ years old at a glance.

🏷️

Never Updated Badge

Instantly spot posts that haven’t been edited since publishing.

One-Click Actions

Draft, private, or trash any post without leaving the screen.

🔒

Safe by Default

All actions use WordPress Trash — nothing is permanently deleted.

Get Started in Minutes

No settings page. No configuration. Just install and go.

1

Install the Plugin

Upload the post-pruner folder to /wp-content/plugins/, then activate it via Plugins > Installed Plugins. Alternatively, search for “Post Pruner” in the Add Plugins screen and install directly from WordPress.org.

2

Open Post Pruner

Go to Tools > Post Pruner in your WordPress admin. The page is available to any user with the Editor or Administrator role. You’ll see all published posts that are at least one year old, sorted into age tabs.

3

Review and Act

Click any age tab to filter posts by that bracket. Hover over a post title to reveal row actions — Edit, View, Draft, Private, or Trash. Each action takes effect immediately and redirects you back to the same tab.

Main Features

Everything you need to audit and manage aging content from one screen.

🗂️

Age Bucket Tabs

The top of the screen shows tabs for All (1yr+), 1 Year, 2 Years, 3 Years, 4 Years, and 5+ Years — each with a live post count. Click any tab to filter the list to just that age range. Counts update automatically whenever a post changes status anywhere in WordPress.

🔄

Age Mode Toggle

Use the “Age based on” toggle above the tabs to switch between Published date and Modified date as the basis for age calculations. Your choice is saved per user, so it persists across page loads and sessions.

🏷️

Never Updated Badge

Posts whose modified timestamp is within 8 hours of their published timestamp are flagged with a “Never updated” badge in the Modified column. This signals content that has not been meaningfully edited since it went live — a quick way to prioritise your review.

📅

Sortable Date Columns

The list table includes separate Published and Modified date columns, both of which are sortable. Click either column header to reorder posts — helpful when you want to find the oldest content or the posts that were updated most recently.

Single-Post Row Actions

Hover any post title to reveal five row actions: Edit, View, Draft, Private, and Trash. Draft and Private change the post’s status immediately; Trash moves it to the WordPress Trash where it can be restored. A confirmation prompt protects against accidental trashing.

📋

Screen Options

Open Screen Options (top-right of the page) to control how many posts are shown per page — from 1 to 200, defaulting to 20. The setting is saved per user so large sites can increase the count once and keep it.

PRO

Need more? Post Pruner Pro has you covered.

Pro unlocks bulk actions (trash, draft, or set to private in one click), support for all post types including custom post types, configurable age thresholds, a full content audit log, and scheduled auto-pruning rules.

Explore Pro Features →

FAQ

Does this permanently delete posts?

No. Every action moves posts to the WordPress Trash. You can restore them at any time from Posts > Trash. Post Pruner never permanently deletes content.

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 registered on your site.

Who can access Post Pruner?

Any user with the edit_others_posts capability — this covers Editors and Administrators by default. Subscribers, Contributors, and Authors do not have access.

What does “Never updated” mean?

A post is flagged as “Never updated” when its modified timestamp is within 8 hours of its published timestamp, indicating it has not been meaningfully edited since it went live. The badge appears in the Modified column regardless of which age mode is active.

Does it affect frontend performance?

No. All queries run in the WordPress admin only and are never executed on the frontend. Post Pruner also caches age-bucket counts using transients to avoid repeated database queries on the admin page itself.

Where is age measured from?

By default, from each 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. Your preference is saved per user.

Ready to prune?

Install Post Pruner for free and start reviewing your aging content in minutes — no configuration required.