WordPress Q&As Logo
WordPress Q&As Part of the Q&A Network
Real Questions. Clear Answers.
Ask any question about WordPress here... and get an instant response.
Q&A Logo Q&A Logo

How do I create a shortcode in wordpress that displays recent posts?

Asked on Sep 03, 2025

Answer

Creating a shortcode in WordPress to display recent posts involves using a custom function and the `add_shortcode` hook. This allows you to insert the shortcode anywhere in your posts or pages to dynamically show recent posts.
<!-- BEGIN COPY / PASTE -->
    function recent_posts_shortcode($atts) {
        $atts = shortcode_atts(
            array(
                'number' => 5, // Default number of posts
            ), 
            $atts, 
            'recent-posts'
        );

        $query = new WP_Query(array(
            'posts_per_page' => $atts['number'],
            'post_status' => 'publish',
        ));

        $output = '<ul>';
        while ($query->have_posts()) : $query->the_post();
            $output .= '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
        endwhile;
        $output .= '</ul>';

        wp_reset_postdata();

        return $output;
    }
    add_shortcode('recent-posts', 'recent_posts_shortcode');
    <!-- END COPY / PASTE -->
Additional Comment:
  • Add this code to your theme's `functions.php` file or a custom plugin.
  • Use the shortcode `[recent-posts]` in your posts or pages to display the list.
  • You can specify the number of posts by using `[recent-posts number="3"]`.
  • Ensure that your theme supports shortcodes in the desired content area.
✅ Answered with WordPress best practices.

← Back to All Questions

Q&A Network
The Q&A Network
WordPress
Ask Questions / Get Answers about WordPress!
Animation
Ask Questions / Get Answers about Animation!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
AI Audio
Ask Questions / Get Answers about AI Audio!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!
Graphic Design
Ask Questions / Get Answers about Graphic Design!
CSS
Ask Questions / Get Answers about CSS!
Robotics
Ask Questions / Get Answers about Robotics!
HTML
Ask Questions / Get Answers about HTML!
Photography
Ask Questions / Get Answers about Photography!
AI Business
Ask Questions / Get Answers about AI Business!
Creative Writing
Ask Questions / Get Answers about Creative Writing!
AI Writing
Ask Questions / Get Answers about AI Writing!
VR & AR
Ask Questions / Get Answers about VR & AR!
Tailwind
Ask Questions / Get Answers about Tailwind!
Security
Ask Questions / Get Answers about Website Security!
DevOps
Ask Questions / Get Answers about DevOps!
AI Design
Ask Questions / Get Answers about AI Design!
UI/UX Design
Ask Questions / Get Answers about UI/UX Design!
Analytics
Ask Questions / Get Answers about Analytics!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
SEO
Ask Questions / Get Answers about SEO!
AI Education
Ask Questions / Get Answers about AI Education!
AI Video
Ask Questions / Get Answers about AI Video!
Data Science
Ask Questions / Get Answers about Data Science!
Web Development
Ask Questions / Get Answers about Web Development!
JavaScript
Ask Questions / Get Answers about JavaScript!
AI Images
Ask Questions / Get Answers about AI Images!
Video Editing
Ask Questions / Get Answers about Video Editing!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
Film Production
Ask Questions / Get Answers about Film Production!
Networking
Ask Questions / Get Answers about Networking!
MobileDev
Ask Questions / Get Answers about Mobile Developement!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
AI Coding
Ask Questions / Get Answers about AI Coding!
Quantum
Ask Questions / Get Answers about Quantum Computing!
Web Hosting
Ask Questions / Get Answers about Hosting!
Monetization
Ask Questions / Get Answers about Ad & Monetization!
Performance
Ask Questions / Get Answers about Web Vitals!
IoT
Ask Questions / Get Answers about IoT!
AI
Ask Questions / Get Answers about AI!
Chatbots
Ask Questions / Get Answers about Chatbots!
Web Languages
Ask Questions / Get Answers about Web Languages!