Bilder beleben eine WordPress-Website. Beim Erstellen eines Beitrags geht aber das Featured Image – wie sich das Beitrags- oder Artikelbild auch nennt – gerne mal vergessen. Dem können Sie vorbeugen.
Den folgenden Code fügen Sie in die Datei functions.php Ihrer Website ein. Öffnen Sie die das File unter Design/Theme-Editor:
add_action('save_post', 'evolution_check_thumbnail');
add_action('admin_notices', 'evolution_thumbnail_error');
function evolution_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', 'evolution_check_thumbnail');
// update the post set it to draft
wp_update_post(array('ID' => $post_id, 'post_status' => 'draft'));
add_action('save_post', 'evolution_check_thumbnail');
} else {
delete_transient( "has_post_thumbnail" );
}
}
function evolution_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>Sie müssen ein Beitragsbild festkegen. </strong>Ohne Beitragsbild kann dieser Beitrag nicht veröffentlicht werden.</p></div>";
delete_transient( "has_post_thumbnail" );
}
}
- In Zeile 5 wird angegeben, welche Post-Types untersucht werden sollen. In diesem Beispiel steht «post», was wohl meist der zutreffende Fall sein wird. Es lassen sich aber auch andere Post-Types definieren.
- Die HTML-Ausgabe der Fehlermeldung ist in Zeile 23 notiert. Passen Sie diese ganz nach Ihrem Gusto an.
Das war’s auch schon. Solange in einem Beitrag kein Artikelbild bestimm ist, erscheint im Seitenkopf eine Warnmeldung. WordPress-Posts ohne Beitragsbilder können damit zwar als Entwurf gespeichert, nicht aber veröffentlicht werden.
Werbung