Nếu bạn từng thấy những bài viết liên quan đến nội dung ngay giữa bài báo, bài hướng dẫn, v.v… bạn đang đọc và muốn làm điều đó, bài viết này sẽ giúp bạn.

Chèn bài viết liên quan vào giữa nội dung bằng Shortcode

Mình sử dụng Media object cửa Bootstrap 3 để làm cấu trúc HTML, các bạn có thể tự thay đổi tùy ý theo nhu cầu sử dụng.

Ví dụ:

PHP

Đầu tiên, bạn chèn đoạn mã này vào functions.php.

/**
 * Post Shortcode
 */
function create_post_block($args) {
    $slug = $args['slug'];
    $query = new WP_Query(
        array(
            'name' => $slug,
            'post_type' => 'post',
            'numberposts' => 1
        ));
    $template = '';
    if ($query->have_posts()) {
        $query->the_post();
        $title = get_the_title();
        $link = get_the_permalink();
        $post_time = vi_human_time_diff(get_the_time('U'), current_time('timestamp'));
        if (!$post_time) $post_time = get_the_time('d/m/Y');
        $thumb = get_the_post_thumbnail($post_id, 'thumbnail', array('class' => 'media-object', 'alt' => 'Ảnh ' . get_the_title()));
        $template = '<div class="media widget-posts-item inline-posts-item"><div class="media-left">' . $thumb . '</div><div class="media-body"><p class="media-heading"><a href="' . $link . '" rel="bookmark">' . $title . '</a><br><span class="media-heading-desc"><i class="style-icon fa-solid fa-calendar m-r-1"></i></span><span class="media-heading-desc m-r-2">' . $post_time . '</span></p></div></div>';
        wp_reset_query();
    }
    return $template;
}
add_shortcode('post_block', 'create_post_block');

Sử dụng

Để chèn vào bài viết, bạn dùng như sau.

[post_block slug="nhin-hinh-mang-cut-doan-tinh-cach-meo-cua-ban"]

Với nhin-hinh-mang-cut-doan-tinh-cach-meo-cua-banSlug của bài viết bạn muốn chèn. Ngoài ra, bạn cũng có thể dùng ID bài viết, chỉ cần điều chỉnh lại đoạn mã bên trên một tí.

Chúc các bạn thành công!