NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.
Publié le : 04 mars 2023 - Modifié le : 4 mars 2023
Temps de lecture : 4 minutes, 0 seconds - 128 mots
Partager la publication "Créer un shortcode des articles modifiés"
Dans ce tutoriel, nous allons créér un shortode permettant d’afficher les derniers articles ou type d’article.
Dans notre exemple, nous allons afficher les articles modifiés il y a moins de 15 jours.
Cependant, nous allons avant tout afficher les derniers articles publiés il y a moins de quinze jours. Ensuite, nous peaufinerons notre requête pour les articles modifiés.
Afficher les derniers articles publiés - de 15 jours
/**************************** Last Posts 15 days ********************************/ add_shortcode( 'lastaddoposts', 'addo_list_posts_publied' ); function addo_list_posts_publied(){ $date_range = strtotime ( '-15 day' ); // Custom WP query query $args = array( 'post_type' => array('post'), 'post_status' => 'publish', 'order' => 'DESC', 'date_query' => array( array( 'after' => array( 'year' => date('Y', $date_range ), 'month' => date('m', $date_range ), 'day' => date('d', $date_range ), ), ) ) ); $query = new WP_Query( $args ); echo '<ul style="padding:0">'; if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); echo '<div class="col-md-3" style="display:inline-block;">'; echo '<li style="position:relative">'; echo '<a style="display:block;background-color: #490b3d;padding: 10px 25px;color: white;" href="' . get_the_permalink() . '">'; echo the_title(); echo'</a>'; echo '<span style="padding:0px 5px;background:#f1b814;color:white;position:absolute;top:-10px;right:0;font-size:11px">' . get_the_time('d-m-Y') . '</span>'; echo '</li>'; echo '</div>'; } } else { echo 'Il n'y a eu aucune publication ces dernières semaines'; } wp_reset_postdata(); echo '</ul>'; }
Shortcode dans les pages
[lastaddoposts]
Shortcode dans les templates
<?php echo do_shortcode( '[lastaddoposts]' ); ?>
Nous allons maintenant corriger notre requête et afficher les derniers articles modifiées il y a moins de quinze jours.
Afficher les derniers articles modifiés - de 15 jours
/**************************** Last Posts modified 15 days ********************************/ add_shortcode( 'postsaddomodified', 'addo_list_posts_modified' ); function addo_list_posts_modified() { // query args $args = array( 'posts_per_page' => '10', 'post_type' => 'post', 'post_status' => 'publish', 'orderby' => 'modified', 'order' => 'DESC', 'ignore_sticky_posts' => '1', 'caller_get_posts' => 1, 'date_query' => array( 'relation' => 'OR', array( 'column' => 'post_date', 'after' => '-1 days' ), array( 'column' => 'post_modified', 'after' => '-15 days' ) ) ); // query $updated = new WP_Query($args); ?> <ul style="padding:0"> <?php if ( $updated->have_posts() ) : ?> <?php while ( $updated->have_posts() ) : $updated->the_post(); ?> <div class="col-md-3" style="display:inline-block;padding:0px"> <li style="position:relative"> <a style="display:block;background-color: #490b3d;padding: 10px 25px;color: white;margin:0 0 10px 0" href="https://famillebreboin.ca/photos/"> <?php the_title(); ?> </a> <span style="padding:0px 5px;background:#f1b814;color:white;position:absolute;top:-10px;right:0;font-size:11px"> <?php get_the_time('d-m-Y'); ?> </span> </li> </div> <?php endwhile; ?> <?php wp_reset_postdata(); ?> <?php else : ?> <?php echo 'Il n'y a eu aucun album mis à jour'; ?> <?php endif; ?> </ul> <?php }
Shortcode dans les pages
[postsaddomodified]
Shortcode dans les templates
<?php echo do_shortcode( '[postsaddomodified]' ); ?>