shortcode – get_queried_object_id / short code returning blank
Question
From this answer, I’m using the following in a small custom plugin:
function mm_related_posts() {
if (is_singular()) {
$tags = wp_get_post_terms( get_queried_object_id(), 'post_tag', ['fields' => 'ids'] );
$args = [
'post__not_in' => array( get_queried_object_id() ),
'posts_per_page' => 5,
'ignore_sticky_posts' => 1,
'tax_query' => [
[
'taxonomy' => 'post_tag',
'terms' => $tags
]
]
];
$my_query = new wp_query( $args );
if( $my_query->have_posts() ) {
echo '<div id="related"><h4>Related Posts</h4>';
while( $my_query->have_posts() ) {
$my_query->the_post(); ?>
<div class="ncc">
<h5><a href="<?php the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>" rel="nofollow"><?php the_title(); ?></a></h5>
<?php the_excerpt(); ?>
</div><!--ncc-->
<?php }
wp_reset_postdata();
echo '</div><!--related-->';
}
}
}
// register shortcode
add_shortcode('mm_related_posts', 'mm_related_posts');
However, the shortcode [mm_related_posts]
is not outputting any content.
Can you see what is wrong with this code, please?
Help appreciated.
0
9 months
2022-08-28T20:53:00-05:00
2022-08-28T20:53:00-05:00 0 Answers
0 views
0
Leave an answer