Hiển thị bài viết trong wordpress

     

Ví dụ vào theme Behold, bạn cũng có thể vào phần Options > Blog rồi lựa chọn Enable Related Posts. Các theme khác giải pháp làm cũng biến thành tương trường đoản cú như vậy.

Bạn đang xem: Hiển thị bài viết trong wordpress

*

*

Những vấn đề cần quan trọng tâm tới một plugin hiển thị Related post WordPress:

Giao diện

Để phần nội dung liên quan tương xứng với kiến tạo chung của toàn bộ trang web, bạn phải 1 plugin có thể chấp nhận được tuỳ chỉnh style và cha cục. Ví dụ, các bạn chỉ muốn hiển thị các bài viết dưới dạng danh sách? hay hiển thị cả ảnh đại diện? hiện trên sidebar? hay ở bên dưới, phía bên trong bài viết?

Một số plugin thậm chí còn còn hỗ trợ các tùy chọn nâng cao, chất nhận được hiển thị các loại nội dung khác nhau (vd: giá sản phẩm WooCommerce)

Tính năng và tùy chọn

Có 2 tính năng đặc biệt quan trọng mà chúng ta nên lưu ý:

Một số pluign hỗ trợ cả 2 công dụng trên, một số trong những khác thì không.

Hiệu suấtĐịnh dạng hỗ trợ

Nếu chúng ta chỉ ao ước hiện thị các nội dung bài viết thì hãy bỏ qua công dụng này. Còn nếu bạn muốn hiển thị các định dạng câu chữ khác (vd: sản phẩm WooCommerce, sự kiện, tiến công giá…), hãy chắc chắn rằng plugin mà các bạn chọn cung cấp tính năng này.

Lưu ý: trước khi bắt đầu, hãy backup lại những file WordPress để ngừa trường hợp đen đủi ro.

Kết nối mang lại server trải qua FTP rồi chuyển đến root directory của WordPress, thường mang tên là public_html.

Xem thêm: Top 5 Plugin Viết Bài Cho Wordpress Tốt Nhất, Plugin Soạn Thảo Văn Bản Wordpress Nào Tốt

*

Sau đó vào directory /jdomain.vn-content/themes rồi click vào thư mục theme. Tìm tệp tin functions.php, bấm vào phải rồi chọn vào View/Edit.

*

Mở file bởi một text editor bất kỳ, kéo xuống dưới thuộc rồi thêm đoạn code sau:

function custom_related_posts( $content ) global $post;$current_post_id = get_the_ID();$html = "";if ( is_singular( "post" ) ) //get the categories of the current post$cats = get_the_category( $current_post_id );$cat_array = array();foreach ( $cats as $key1 => $cat ) $cat_array< $key1 > = $cat->slug;//get the tags of the current post$tags = get_the_tags( $current_post_id );$tag_array = array();foreach ( $tags as $key2 => $tag ) $tag_array< $key2 > = $tag->slug;$related_posts = new jdomain.vn_Query(array("post_type" => "post","post_status" => "publish","tax_query" => array("relation" => "OR",array("taxonomy" => "category","field" => "slug","terms" => $cat_array),array("taxonomy" => "post_tag","field" => "slug","terms" => $tag_array)),"posts_per_page" => 3,"post__not_in" => array( $current_post_id ),"orderby" => array( "title" => "ASC", "date" => "DESC" )));if ( $related_posts->have_posts() ) $html .= "
";if ( has_post_thumbnail( $post->ID ) ) $image = jdomain.vn_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "medium" );$html .= " ) . "">";$html .= "" . Get_the_title() . "";$html .= "
";$content .= $html;return $content;add_filter( "the_content", "custom_related_posts" );BashSau đó lưu lại các thay đổi, upload tệp tin vừa chỉnh sửa lên server lại để áp dụng.Cụ thể về công dụng của từng đoạn code như sau:

function custom_related_posts( $content ) global $post;$current_post_id = get_the_ID();$html = "";if ( is_singular( "post" ) ) // Some code here$content .= $html;return $content;add_filter( "the_content", "custom_related_posts" );BashTrước hết, đấy là một hàm filter với tên thường gọi custom_related_posts, được nối (hook) với filter “the_content” trải qua hàm add_filter. Về cơ bạn dạng thì các hàm filter là 1 trong những cách để biến đổi thông tin được chuyển vào hàm ban đầu. Vào trường hòa hợp này, thông tin thuở đầu là $content, cho biết nội dung mà lại ta insert vào trong 1 trang hay bài viết thông qua page builder.

Câu lệnh điều kiện is_singular(‘post’) giúp ta bảo đảm an toàn rằng những biến hóa mới sẽ được vận dụng trên các bài blog. Để phân tích và lý giải phần sót lại của đoạn code, Vietnix sẽ chia thành hai phần nhỏ: query (truy vấn) cùng WordPress loop (vòng lặp).

Truy vấn

Vòng lặp

if ( $related_posts->have_posts() ) {$html .= "
";if ( has_post_thumbnail( $post->ID ) ) $image = jdomain.vn_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), "medium" );$html .= " ) . "">";$html .= "" . Get_the_title() . "";$html .= "
";BashPhần này có nhiệm vụ tạo HTML bởi một vòng lặp trong WordPress. Nếu có bất kỳ nội dung bài viết nào khớp với truy vấn trước đó, nó vẫn hiển thị tiêu đề Related Posts, tiếp đến là một số subsection tương ứng với từng bài viết khớp với truy vấn vấn. Những subsection này chứa featured image (nếu có) với tiêu đề bài bác viết. Còn nếu không có bài viết nào khớp với truy vấn vấn, thông báo No related posts sẽ được trả về.

Trước hết, vào phần Appearance > Customize > Additional CSS rồi nhập đoạn code sau:


Chuyên mục: Domain Hosting