Requerir imagen destacada antes de publicar un post

Si quieres que sea obligatorio añadir una imagen destacada a un post para que se publique puedes hacer uso del siguiente snippet en el functions.php

add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');
function wpds_check_thumbnail($post_id) {
    
    if(get_post_type($post_id) != 'post')
        return;
    if ( !has_post_thumbnail( $post_id ) ) {
        set_transient( "has_post_thumbnail", "no" );
        remove_action('save_post', 'wpds_check_thumbnail');
        wp_update_post(array('ID' => $post_id, 'post_status' => 'draft'));
        add_action('save_post', 'wpds_check_thumbnail');
    } else {
        delete_transient( "has_post_thumbnail" );
    }
}
function wpds_thumbnail_error()
{
    if ( get_transient( "has_post_thumbnail" ) == "no" ) {
        echo "<div id='message' class='error'><p><strong>Debes seleccionar una imagen destacada. Tu post no se ha publicado pero se ha guardado.</strong></p></div>";
        delete_transient( "has_post_thumbnail" );
    }
}

Fuente: wpsnipp

Deja un comentario