Wordpress Development
Schreibe einen Kommentar

wp_get_recent_posts() nur für published Posts

Hi, Du hast sicher gerade mit erschrecken festgestellt, dass Deine wp_get_recent_posts() Loop auch Posts ausgibt, die auf Entwurf oder Review stehen. Das lässt sich jedoch sehr leicht umgehen. In diesem kurzen Beitrag zeige ich, wie Du eine wp_get_recent_posts() Loop so aufbaust, dass nur die Posts, die published sind ausgegeben werden.

Nur Posts ausgeben, die published sind

Die Lösung des Problems ist relativ simpel und bedeutet eine einzige IF Abfrage in der Loop if($recent["post_status"]=="publish"){...}

Hier ist ein funktionierendes Beispiel

Dieses Beispiel lädt die 15 letzten Posts, die published sind und gibt diese mit Titel und Excerpt aus.

    <?php
      $recent_posts = wp_get_recent_posts( array( 'numberposts' => '15' ) );
      $i=0;
      foreach( $recent_posts as $recent ){
        if($recent["post_status"]=="publish"){
          echo '<a href="' . get_permalink($recent["ID"]) . '">
              <div class="recent_posts_main">
              <h3>' .   $recent["post_title"] . '</h3>
              <p>' . $recent["post_excerpt"] . '</p>
              <br style="clear:left;">
            </div>
            </a>';
            $i++;
         }
      }
    ?>

Alternative get_archives() depricated

Die Alternative Möglichkeit mit die Posts auszugeben ist deprecated und sollte nicht mehr benutzt werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.