14/10/14

[ Thủ Thuật ] Hiển thị bài viết ngẫu nhiên và xem nhiều nhất không dùng Plugins trong WordPress

Từ khóa

Cũng giống như chủ nhân của blog, mình là một người thích sử dụng code hơn là plugins để mở rộng tính năng cho blog sử dụng WP. Điều này có lẽ một phần xuất phát từ quan niệm “sử dụng càng ít plugin càng cải thiện tốc độ load blog”. Mà tốc độ quan trọng thế nào thì mình không cần phải nói chắc các bạn cũng hiểu, phải không?
Trong bài viết đầu tiên này, mình sẽ hướng dẫn các bạn một thủ thuật nhỏ giúp hiển thị các bài viết một cách ngẫu nhiên và bài được xem nhiều nhất mà không sử dụng plugins. Hiện tại mình đang áp dụng cho blog của mình. Xin đi vào vấn đề cụ thể.
Để hiển thị bài viết ngẫu nhiên, bạn chỉ cần chèn đoạn code sau vào file sidebar.php hay bất kỳ file loop trong WP nào, nơi mà bạn muốn hiển thị bài ngẫu nhiên :

<h3>Bài ngẫu nhiên</h3>
    <div class="box">
      <?php
 $rand_posts = get_posts('numberposts=so_bai_hien_thi&orderby=rand');
 foreach( $rand_posts as $post ) :
 ?>
      <li > <a style="font-weight:bold;font-size:13;" href="<?php the_permalink(); ?>">
        <?php the_title(); ?>
        </a></li>
      <?php endforeach; ?>
      </li>
</div>
Còn đây là code hiển thị bài viết được xem nhiều nhất :
<h3>Xem nhiều nhất</h3>
<div class="box">
         <?php $popular_number = so_bai_hien_thi; $result = $wpdb->get_results("SELECT comment_count,ID,post_title,post_content FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , $popular_number");
            foreach ($result as $post) {
            setup_postdata($post);
            $postid = $post->ID;
            $title = $post->post_title;
            $content = $post->post_content;
            $commentcount = $post->comment_count;
            if ($commentcount != 0) { ?>
            <li>
            <a style="font-weight:bold;font-size:13;" href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $title ?></a></li>
            <?php } } ?>
</div>

Bạn nhớ thay “so_bai_hien_thi” bằng số thích hợp để tùy chọn số bài sẽ hiển thị nhé.
Nếu bạn đã làm theo hướng dẫn trong bài viết về cách tự lấy ảnh trong bài viết thì để gọi ảnh thumbnail hiển thị bạn chỉ cần dùng đoạn code sau:

&lt;?php img(do_rong,do_cao); ?&gt;

Trong đó do_rong, do_cao là giá trị về kích thước mà bạn có thể tùy biến cho ảnh thumbnail. Kết hợp với code trên, để hiển thị ảnh thumb cho bài viết ngẫu nhiên và xem nhiều bạn chỉ cần chèn code sau.
Đối với bài viết ngẫu nhiên

<h3>Bài ngẫu nhiên</h3>
    <div class="box">
      <?php
 $rand_posts = get_posts('numberposts=so_bai_hien_thi&orderby=rand');
 foreach( $rand_posts as $post ) :
 ?>
      <li ><div style="float:left; width: 60px; height: 50px;"><a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php img(50,50); ?></a></div><a style="font-weight:bold;font-size:13;" href="<?php the_permalink(); ?>">
        <?php the_title(); ?>
        </a></li>
      <?php endforeach; ?>
      </li>
</div>
Đối với bài xem nhiều nhất
<h3>Xem nhiều nhất</h3>
<div class="box">
         <?php $popular_number = so_bai_hien_thi; $result = $wpdb->get_results("SELECT comment_count,ID,post_title,post_content FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , $popular_number");
            foreach ($result as $post) {
            setup_postdata($post);
            $postid = $post->ID;
            $title = $post->post_title;
            $content = $post->post_content;
            $commentcount = $post->comment_count;
            if ($commentcount != 0) { ?>
            <li><div style="float:left; width: 60px; height: 50px;"><a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php img(50,50); ?></a></div>
            <a style="font-weight:bold;font-size:13;" href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $title ?></a></li>
            <?php } } ?>
</div>
Chúc các bạn thành công
Lưu ý: Bài viết xem nhiều ở đây dựa vào số lượng phản hồi để xác định.

Điểm 4.6/5 dựa vào 87 đánh giá
  • Lazada : Mở chương trình "giá khuynh đảo", giới hạn mỗi người mua tối đa 2 sản phẩm Click xem
  • Adayroi : iPhone 7 lần đầu về giá dưới 15 triệu đồng Click xem
  • Tiki : Giảm 10% cho thẻ tín dụng HSBC Click xem

Bài liên quan


EmoticonEmoticon