wp_delete_auto_drafts

The timeline below displays how wordpress function wp_delete_auto_drafts has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 6.1

/**
 * Deletes auto-drafts for new posts that are > 7 days old.
 *
 * @since 3.4.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 */
function wp_delete_auto_drafts()
{
    global $wpdb;
    // Cleanup old auto-drafts more than 7 days old.
    $old_posts = $wpdb->get_col("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'auto-draft' AND DATE_SUB( NOW(), INTERVAL 7 DAY ) > post_date");
    foreach ((array) $old_posts as $delete) {
        // Force delete.
        wp_delete_post($delete, true);
    }
}

WordPress Version: 4.1

/**
 * Delete auto-drafts for new posts that are > 7 days old.
 *
 * @since 3.4.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 */
function wp_delete_auto_drafts()
{
    global $wpdb;
    // Cleanup old auto-drafts more than 7 days old.
    $old_posts = $wpdb->get_col("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'auto-draft' AND DATE_SUB( NOW(), INTERVAL 7 DAY ) > post_date");
    foreach ((array) $old_posts as $delete) {
        // Force delete.
        wp_delete_post($delete, true);
    }
}

WordPress Version: 4.0

/**
 * Delete auto-drafts for new posts that are > 7 days old.
 *
 * @since 3.4.0
 *
 * @global wpdb $wpdb WordPress database access abstraction object.
 */
function wp_delete_auto_drafts()
{
    global $wpdb;
    // Cleanup old auto-drafts more than 7 days old.
    $old_posts = $wpdb->get_col("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'auto-draft' AND DATE_SUB( NOW(), INTERVAL 7 DAY ) > post_date");
    foreach ((array) $old_posts as $delete) {
        // Force delete.
        wp_delete_post($delete, true);
    }
}

WordPress Version: 3.7

/**
 * Deletes auto-drafts for new posts that are > 7 days old
 *
 * @since 3.4.0
 */
function wp_delete_auto_drafts()
{
    global $wpdb;
    // Cleanup old auto-drafts more than 7 days old
    $old_posts = $wpdb->get_col("SELECT ID FROM {$wpdb->posts} WHERE post_status = 'auto-draft' AND DATE_SUB( NOW(), INTERVAL 7 DAY ) > post_date");
    foreach ((array) $old_posts as $delete) {
        wp_delete_post($delete, true);
    }
    // Force delete
}