Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@retgef
Created September 6, 2011 15:38
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save retgef/1197890 to your computer and use it in GitHub Desktop.
Save retgef/1197890 to your computer and use it in GitHub Desktop.
Wordpress Post Expirator
<?php
/*
This function assumes a custom field named 'expiration' with a human friendly date/time.
*/
function is_post_expired($post_ID = null){
if(!$post_ID) global $post;
$post_ID = $post_ID ? $post_ID : $post->ID;
//Human Friendly Expiration Date
$expiration = get_post_meta($post_ID, 'expiration', true);
//Adjust server time for your timezone
date_default_timezone_set('American/New_York');
$expiration_timestamp = strtotime($expiration);
$time_left = $expiration_timestamp - time();
if($time_left < 0):
if(expire_post($post_ID))
return true;
endif;
}
function expire_post($post_ID){
$args = array(
'ID' => $post_ID,
'post_status' => 'draft'
);
if(wp_update_post($args))
return true;
}
?>
@covoiturage
Copy link

Hello everyone,

first thanks so much for sharing this code. I am using the theme Classipress with the child theme Eldorado and just want to know where to insert this php file; into the parent theme or into the child theme. Another question: how to set the custom field "expiration" ?

Thanks in advance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment