Contributors: tarosky,Takahashi_Fumiki
Tags: post, media, expiration
Requires at least: 5.9
Requires PHP: 7.2
Tested up to: 6.7
Stable tag: nightly
License: GPLv3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
A WordPress plugin to expire post with specified date.
You can enter expiration date on edit screen.
This plugin runs cron every minute to search expired posts and make them private
.
- Upload the plugin files to the
/wp-content/plugins/taro-clockwork-post
directory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the 'Plugins' screen in WordPress.
- Go to
Setting > Reading
and choose post type to expiration ready.
Private is the default post status but if you want another case, use filter hook for that.
// Filter status if post type is `product` add_filter( 'tscp_expired_status', function( $status, $post ) { if ( 'product' == $post->post_type ) { $status = 'no-stock'; } return $status; }, 10, 2 );
If status is false
, this plugin doesn't change post status.
In such situation, you might need adding any custom field to post.
Use another action which will occur just after tscp_expired_status
.
// do something just after post status is/isn't changed. add_action( 'tscp_post_expired', function( $post ) { // Post is still publish, // But add some custom fields update_post_meta( $post->ID, '_not_in_front_page', true ); } );
If you are low-resource environment, you might need low frequency. For example, assume that your site allows posts to be expired within 10 min. Use hook to delay interval.
add_filter( 'tscp_cron_interval', function() { // Change interval from 60 sec to 600 sec. return 600; } );
- Fix month string error in Clasic editor's meta box. This happened on Any 31st day in a month.
- Fix deploy script to avoid incorrect versioning.
- Available post type are expanded to all post types with
show_ui = true
. - Remove
withState
from editor script.
- Bump required PHP version.
- Fix editor UI.
- Support block editor.
- Fix broken link on edit screen.
- Add unit test for expiration process.
- Initial release.