NHANWEB

Tạo shortcode bài viết liên quan trong WordPress

Mặc dù trong hệ thống plugin của WordPress có sẵn plugin để thể hiện bài viết có liên quan (Recent Posts) nhưng điểm không vừa ý là nó hiển thị ở những vị trí cố định khiến cho việc hiển thị bài viết liên quan có thể không tùy ý như mong muốn của bạn. Nếu vậy, tại sao chúng ta không tạo ra một ShortCode riêng để có thể hiển thị mục bài viết liên quan ở bất kỳ chỗ nào chúng ta muốn ?

Lợi điểm của giải pháp này là bạn có thể hiển thị Shortcode tùy biến ở bất kỳ chỗ nào mà bạn muốn. Chúng ta chỉ cẩn thêm đoạn mã sau vào functions.php là được:

/**
 * Shortcode to display the most recent posts
 * The attributes passed into the function will be passed into the WP_Query object to modify the query
 * By default the last 10 posts will be displayed
 * 
 * @param $atts
 * @param $content
 * 
 * @return string
 */
function pu_recent_posts_shortcode($atts, $content = NULL)
{
    $atts = shortcode_atts(
        [
            'orderby' => 'date',
            'posts_per_page' => '10'
        ], $atts, 'recent-posts' );
    
    $query = new WP_Query( $atts );

    $output = '
<ul class="recent-posts">';

    while($query->have_posts()) : $query->the_post();

        $output .= '
<li><a href="' . get_permalink() . '">' . get_the_title() . '</a> - <small>' . get_the_date() . '</small></li>

';

    endwhile;

    wp_reset_query();

    return $output . '</ul>

';
}
add_shortcode('recent-posts', 'pu_recent_posts_shortcode');

Để hiện thị danh sách 10 bài viết liên quan ở bất kỳ chỗ nào bạn chỉ cần sử dụng ShortCode [recent-posts] là xong.

Exit mobile version