TW Link Expiration Manager

Description

TW Link Expiration Manager is a simple yet powerful plugin that lets you control how long your WordPress content remains publicly accessible.
Add an expiration date and time to any Posts, Pages, WooCommerce Products and Custom Post Types. Once the expiration time passes, the post will be automatically set to draft and will return a 404 page to visitors.
Perfect for limited-time offers, announcements, event content, or any posts that should only be live temporarily.

Features:

  • Adds an “Expiration Time” field to both the post editor and Quick Edit panel
  • Automatically sets posts to draft after expiration
  • Expired posts show a 404 page instead of the content
  • Works with all public post types
  • No setup or configuration required. Just install and go

License

This plugin is licensed under the GPL-2.0+ License. You can freely use, modify, and distribute it under the terms of this license. See the full license at: https://opensource.org/licenses/GPL-2.0

Screenshots

  • Screenshot 1: Example of Link Expiration field displayed on a edit post.
  • Screenshot 2: Example of Link Expiration field displayed on a Quick edit post.
  • Screenshot 3: Plugin Tutorial page in the WordPress dashboard.

Installation

  1. Upload the plugin folder to /wp-content/plugins/, or install it via the WordPress admin panel.
  2. Activate the plugin from the Plugins menu.
  3. When editing a post, set an expiration date/time in the new Link Expiration box.
  4. The plugin will handle the rest.

FAQ

Does it support custom post types?

Yes, the expiration feature is automatically added to all public post types, including custom ones.

What happens when a post expires?

Once the set expiration time has passed, the plugin will change the post’s status to “draft” and show a 404 error page if someone tries to access it.

Why is the expired post still published after the expiration time?

The post only changes to “draft” when it’s visited. If the post isn’t visited after its expiration, it will remain published until accessed. This avoids performance issues from background checks.

Does it run on cron or scheduled events?

No, The expiration is handled in real time, ensuring expired posts are processed efficiently when accessed, without cron jobs.

Does this work with page builders or custom themes?

Yes. It works independently of your theme or builder, since it only manages post status and 404 behavior.

Can visitors still view expired posts if they have the direct link?

No, Once the expiration time passes and the post is visited (to trigger expiration), it’s set to draft. It will show a 404 for all non-logged-in users. Admins can still access it in the dashboard.

Where can I view a tutorial?

You’ll find a full usage tutorial under Settings Tutorial (TW LEM), including a Video Tutorial

Can I bulk edit or set expiration dates for multiple posts?

Currently, expiration is set individually per post via the post editor. Bulk editing is not available yet.

Can I change how the expiration is handled (like deleting the post instead)?

Not yet. Future versions may offer customizable expiration actions like trashing, deleting, or redirecting.

Can I configure the expiration behavior?

Currently, there is no settings page. A future update may include options for default expiration times or behavior.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“TW Link Expiration Manager” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.0

  • Initial release
  • Adds expiration functionality for all public post types
  • Real-time expiration handling on page visit
  • Includes comprehensive tutorial page with step-by-step guidance