Hvem fanden er den general?
Hvem fanden er den general?

WordPress get_resent_posts vises ikke alle posts

Efter hvad jeg kunne finde på nettet, skulle WP vises alle de posts der matcher dine udvælgelses kriterier, altså default burde numberposts være lig med -1.

Koden herunder vil lave en liste med dine posts i en bestemt kategori (ID = 1) fordelt på år.

for($i=0; $i<10; $i++) {    
   $posts = wp_get_recent_posts(array('category'=>1, 'year'=>date('Y', strtotime('-'.$i.' year'))));
   if(count($posts) > 0) {
      echo date('Y', strtotime('-'.$i.' year')).'<br />';
      foreach($posts as $post) {
         echo '<a href="'.get_permalink($post['ID']).'">'.$post['post_date'].' - '.$post['post_title'].'</a><br />';
         $content = strip_tags($post['post_content']);
         echo (mb_strlen($content, 'UTF-8') > 200 ? mb_substr($content, 0, 200, 'UTF-8').'...' : $content);
      }
   }
}

Så ville jeg forvente at få alle post for de på gældene år. Men i praksis får jeg kun 20 (eller der omkring har ikke talt).

For at jeg kunne få den til at vise alle skulle jeg sætte numberposts være lig med -1.
wp_get_recent_posts funktionen skal have dette parameter:

   $posts = wp_get_recent_posts(array('numposts'=>-1, 'category'=>1, 'year'=>date('Y', strtotime('-'.$i.' year'))));

Så fik jeg alle posts ud 🙂

 

Leave a comment

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

This site uses Akismet to reduce spam. Learn how your comment data is processed.