In WordPress we can create custom shortcodes and we can show its output anywhere on the site. To create a shortcode, we will use WordPress built in function add_shortcode(), this function required two parameters, first “shortcode” and others “callback function”; callback function is the function that we will create in theme’s functions.php file.
function theme_name_movies_shortcode($atts = [])
{
$a = shortcode_atts( array(
'no_of_posts' => 5,
'title' => "Movies List"
), $atts );
$the_query = new WP_Query( array(
'post_type' => 'movies',
'posts_per_page' => $a['no_of_posts'],
));
if ( $the_query->have_posts() ) : ?>
<h2><?php echo $a['title']?></h2>
<ul>
<?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<li><a href="<?php echo get_permalink($the_query->ID)?>"><?php the_title(); ?></a></li>
<?php
endwhile;
?>
</ul>
<?php wp_reset_postdata();
else :
__('No Movies');
endif;
}
add_shortcode(“movies_list”, “theme_name_movies_shortcode”);
For reference, check following function, suppose there is custom post type named “movies” and you want to show movie list in sidebar.
Now you can use “movies_list” shortcode in your website as following ways.
// Use shortcode in a PHP file.
echo do_shortcode( '[movies_list no_of_posts="5" title="Movies"]' );
Or you can add following statement in “text” widget.
[movies_list no_of_posts="5" title="Latest Films"]
That’s it. Hope this will help.
Choosing the right ecommerce platform can make or break your online business. But is Shopify…
Most "AI agent" content online is still stuck at the demo stage — a slick…
If you've been using Claude Code as little more than a fancy autocomplete — typing…
When building real-world Laravel applications, email handling quickly becomes scattered. You send emails from controllers,…
Build flexible, readable, and secure query filters across multiple Laravel models — no more bloated…
Artificial Intelligence is transforming how we work, create, and earn. But most people get stuck…