Überspringe Beiträge ohne Vorschaubild in der Schleife

Ich möchte jeden Beitrag überspringen, der keine Miniaturansicht hat. Der Code funktioniert noch nicht richtig.

Tatsächlich zeigt das Skript keine Posts ohne Thumbnail – das ist gut, aber in der Schleife wird der Post ohne Thumbnail immer noch als Post gezählt.

Also wenn ich zum Beispiel 10 Posts in meiner database habe. Ich möchte 5 von ihnen zeigen. Aber nur die Posts mit einem Thumbnail.

    5, 'orderby' => 'date', 'order' => 'DESC', 'post_type' => 'post', 'post_status' => 'publish' ); $my_posts = get_posts( $args ); global $post; foreach( $my_posts as $post ) : setup_postdata($post); if ( !has_post_thumbnail() ) { continue; } else { ?>
  • <a href="https://wordpress.stackexchange.com/questions/100585/skip-posts-without-a-thumbnail-in-loop/" class="title">

Solutions Collecting From Web of "Überspringe Beiträge ohne Vorschaubild in der Schleife"

Sie können versuchen, hinzuzufügen

  'meta_key' => '_thumbnail_id', 

zu Ihren Eingabeargumenten:

 $args = array( 'numberposts' => 5, 'orderby' => 'date', 'order' => 'DESC', 'post_type' => 'post', 'post_status' => 'publish', 'meta_key' => '_thumbnail_id', ); 

nur Beiträge mit Thumbnails (dh vorgestellte Bilder) abfragen.

ps: anstelle dieser Struktur:

 if ( !has_post_thumbnail() ) { continue; } else { } 

Sie können im Allgemeinen verwenden

 if ( has_post_thumbnail() ) { } 

Aber Sie können jetzt den if -sentent-Teil in der Schleife überspringen, da Sie nur noch Posts mit vorgestellten Bildern abrufen.