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.