Vous cherchez un moyen d’exiger une image vedette avant de pouvoir publier un article ? Cet extrait exigera que vous ayez ajouté une image en vedette avant de pouvoir publier votre article. Si vous essayez de publier un message sans image vedette après avoir ajouté cet extrait, vous recevrez le message suivant : “Vous devez sélectionner l’image en vedette. Votre message est enregistré mais il ne peut pas être publié.”
Instructions:
Il vous suffit d’ajouter ce code dans le fichier functions.php de votre thème ou dans un plugin spécifique à votre site:
add_action('save_post', 'wpds_check_thumbnail'); add_action('admin_notices', 'wpds_thumbnail_error'); function wpds_check_thumbnail($post_id) { // change to any custom post type if(get_post_type($post_id) != 'post') return; if ( !has_post_thumbnail( $post_id ) ) { // set a transient to show the users an admin message set_transient( "has_post_thumbnail", "no" ); // unhook this function so it doesn't loop infinitely remove_action('save_post', 'wpds_check_thumbnail'); // update the post set it to draft 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() { // check if the transient is set, and display the error message if ( get_transient( "has_post_thumbnail" ) == "no" ) { echo "<div id='message' class='error'><p><strong>You must select Featured Image. Your Post is saved but it can not be published.</strong></p></div>"; delete_transient( "has_post_thumbnail" ); } }
Note : Si c’est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez consulter notre guide sur la manière de copier/coller correctement des extraits de code dans WordPress, afin de ne pas endommager accidentellement votre site.
Si vous avez aimé cet extrait de code, n’hésitez pas à consulter nos autres articles sur le site comme : 7 meilleurs plugins WordPress de galerie comparés.
Hi! does it works for Woocommerce featured image?
can we make also for post title
You may be able to check if the title has been added by using the get_the_title() function.
This is creating so many unwanted auto drafts in the system
Hi Visal,
Why is creating auto-drafts?
Did you solve this problem?
Regards
Thanks
Hey Kevin. I am creating a custom functions plugin where I added this snippet and it seems to work fine until I go to delete a draft/post. I am not able to delete as it just gives me the “You must select a Featured Image. Your Post is saved but it can not be published.” I have to remove the code to be able to delete a post.
I put the function (wpds_check_thumbnail)’s code inside of:
if ( ‘trash’ != get_post_status( $post_id ) ) { //Code here }
Great! This is quite useful for me at the moment. Is this adjustable to only work on a certain post-type or category?