Truy vấn dữ liệu trong wordpress WP_Query, LOOP

0
328
  1. WP_QUERY

WP_Query là một lớp được định nghĩa trong WordPress. Nó cho phép các nhà phát triển viết các truy vấn tùy chỉnh và hiển thị các bài đăng bằng các tham số khác nhau. Các nhà phát triển có thể truy vấn trực tiếp cơ sở dữ liệu WordPress. Tuy nhiên, WP_Query là một trong những cách được đề xuất để truy vấn các bài đăng từ cơ sở dữ liệu WordPress.

Dưới đây là một ví dụ về WP_Query đơn giản hiển thị các bài đăng từ thể loại phim:

<?php
// The Query
$the_query = new WP_Query( 'category_name=movies' );

?>

Mã mẫu ở trên không tự động hiển thị bài viết. Để hiển thị kết quả của truy vấn, người dùng sẽ cần sử dụng vòng lặp WordPress. Như thế này:

<?php
// The Query
$the_query = new WP_Query( 'category_name=movies' );

// The Loop
if ( $the_query->have_posts() ) {
        echo '<ul>';
	while ( $the_query->have_posts() ) {
		$the_query->the_post();
		echo '<li>' . get_the_title() . '</li>';
	}
        echo '</ul>';
} else {
	// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();

?>

WP_Query là một công cụ mạnh mẽ có nhiều tham số có thể được sử dụng để viết các truy vấn phức tạp và nâng cao hơn.WP_Query có thể được sử dụng để tạo các vòng lặp lồng nhau (một vòng lặp WordPress bên trong một vòng lặp). Các nhà phát triển WordPress có thể sử dụng nó trong các plugin và chủ đề của họ để tạo ra các bài đăng tùy chỉnh của riêng họ.

Danh sách đầy đủ các tham số WP_Query có sẵn trên WordPress Codex .

2. LOOP

Vòng lặp, hoặc vòng lặp WordPress hoặc đơn giản là vòng lặp, là mã PHP hiển thị các bài đăng WordPress. Vòng lặp được sử dụng trong các chủ đề WordPress để hiển thị danh sách các bài đăng trong trang web.

Bên trong vòng lặp có một số chức năng được chạy theo mặc định để hiển thị các bài đăng. Các nhà phát triển chủ đề có thể định dạng đầu ra bằng cách sử dụng thẻ mẫu để tùy chỉnh cách mỗi bài đăng trong vòng lặp được hiển thị. Có một số thẻ Mẫuchỉ hoạt động trong vòng lặp WordPress và có thể được sử dụng để định dạng, sắp xếp và xuất bản dữ liệu bài đăng. Vòng lặp WordPress được cho là một trong những khía cạnh quan trọng nhất của mã WordPress và là cốt lõi của hầu hết các truy vấn theo cách này hay cách khác.

Một ví dụ sử dụng vòng lặp WordPress đơn giản:

<?php

// Kiểm tra xem có bất kỳ bài viết nào phù hợp với câu truy vấn không
if (have_posts()) :

  // Nếu như có bài viết nào phù hợp với câu truy vấn, ta bắt đầu vòng lập
  while ( have_posts() ) : the_post();

    // viết các câu lệnh thực thi ở đây
    ?>

    <h2 id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h2>

    <p class="date-author">Posted: <?php the_date(); ?> by <?php the_author(); ?></p>

    <?php the_content(); ?>

    <p class="postmetadata">Filed in: <?php the_category(); ?> | Tagged: <?php the_tags(); ?> | <a href="<?php comments_link(); ?>" title="Leave a comment">Comments</a></p>

    <?php

    // Kêt thúc vòng lập
 endwhile;

// Nếu như không có bài viết nào phù hợp với câu truy vấn
else :
?>
<p>Sorry no posts matched your criteria.</p>
<?php
endif;
?>

LEAVE A REPLY

Please enter your comment!
Please enter your name here