Créer un Shortcode Query Post WordPress

Version audio de cet article
Créer un Shortcode Query Post WordPress :
Dans ce tutoriel nous allons donc créer un Shortcode qui va englober et donner le résultat d’une requête WordPress.
Nous allons pour ça créer un add_shortcode qui va donc contenir en paramètre le nom du shortcode et le nom de la fonction.
Ici dans cet exemple, nous appelons par requête un post type vidéos classé par nombre de likes.
Nous avons edité en même temps dans le shortcode le get option si vous avez des options. Ensuite nous exécutons le new WP_Query.
<?php
// Creation du shortcode permettant de lister la liste des videos classées par nombre de likes
add_shortcode( 'viavideoslikes', 'via_videos_list_likes_shortcode' );
function via_videos_list_likes_shortcode( $atts ) {
ob_start();
$options = get_option('via_video_name');
$query = new WP_Query( array(
'post_type' => 'viavideos',
'meta_key' => '_post_like_count',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'posts_per_page' => -1,
) );
if ( $query->have_posts() ) {
?>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
// Afficher ici votre contenu dynamique dans vos contenants div
<?php endwhile; wp_reset_postdata(); ?>
<?php $myvariable = ob_get_clean();
return $myvariable;
}
}Créer une page et afficher le shortcode de cette facon.
[viavideoslikes]
Ou dans une page template
<?php echo do_shortcode('[viavideoslikes]'); ?>