Dans un blog, il peut s’avérer nécessaire de faire remonter sur la page d’accueil ou dans une colonne d’un site les derniers posts et les dernières pages modifiés. En rajoutant quelques lignes de codes, on arrive facilement à obtenir cette fonctionnalité.
La première étape est de définir une fonction qui va récupérer dans la base de données les différents posts :
function sfx_get_recent_posts($limit = 10) { global $wpdb; $today = current_time('mysql', 1); $sql = " SELECT ID, post_title FROM " . $wpdb->posts ." WHERE post_status = 'publish' AND post_modified_gmt < '" . $today . "' ORDER BY post_modified_gmt DESC LIMIT ".(int)$limit; return $wpdb->get_results($sql); }
Il reste plus qu’a l’utiliser dans un template
<?php if($recentposts = sfx_get_recent_posts()): ?> <h2><?php _e("Recently Updated"); ?></h2> <ul> <?php foreach($recentposts as $post): ?> <?php if($post->post_title != ''): ?> <li> <a href="<?php echo get_permalink($post->ID) ?>"><?php echo $post->post_title ?></a> </li> <?php endif; ?> <?php endforeach; ?> </ul> <?php endif; ?>
Bonjour et merci pour le tuto
bien sûr j’ai un petit problème que je n’arrive pas à résoudre si vous pouviez m’aider ce serai sympa :
Je voudrai limiter les « Posts Récents » a 4 car dès que j’en ai plus cela dépasse sur le template donc pas très jolie !!! Comment cela est possible !!!
Merci
Si tu as utilisé le code ci-dessus, il suffit de passer 4 en paramètre de la fonction.
Merci pour ta réponse super rapide !!
mais je n’ai pas encore utilisé les deux scripts !! car je n’ai pas trouvé dans quel page je doit les mettre????
j’ai bien chercher avant !!mais bon!! je suis pas super doué !!!
Le premier dans le fichier functions.php de ton thème.
Visiblement le deuxième dans le fichier header.php de ton thème.
le 2ème dans le fichier hearder.php ???