Mối quan hệ giữa WP_Query và vòng lặp WordPress là gì?

Cơ sở dữ liệu cung cấp trang web WordPress của bạn chứa đầy thông tin có giá trị. Đây là điều giúp bạn có thể lọc các bài đăng và trang của mình theo nhiều biến số khác nhau. Tuy nhiên, nếu những gì bạn muốn hiển thị không phải là một phần của chủ đề của bạn, thì có nhiều cách khác để sử dụng dữ liệu đó.  

Đây là nơi WP_Query xuất hiện. Đây là một lớp PHP sử dụng nhiều loại tham số. Do đó, nó cho phép bạn lấy dữ liệu từ cơ sở dữ liệu WordPress để sử dụng hoặc hiển thị trên trang web của mình.  

Trong bài viết này, chúng tôi sẽ cung cấp kiến ​​thức sâu hơn về lớp WP_Query và cách sử dụng lớp này. Chúng tôi cũng sẽ hướng dẫn bạn một số bước quan trọng để làm theo khi sử dụng nó. Nếu bạn đã sẵn sàng, hãy đi sâu vào ngay.  

Mục lục

WP_Query là gì?

Như chúng tôi đã đề cập, WP_Query là một lớp PHP được cơ sở dữ liệu WordPress sử dụng. Lớp cụ thể này có thể thực hiện một số việc, nhưng chủ yếu nó được sử dụng để lấy các bài đăng từ cơ sở dữ liệu.  

Như tên gọi của nó, nó tạo một truy vấn dựa trên các tiêu chí bạn đặt cho nó. Vì bạn có thể sử dụng với WP_Query trong WordPress, nên bạn có thể kéo và hiển thị các bài đăng theo một số cách độc đáo. Chúng ta sẽ khám phá các tùy chọn đó chi tiết hơn sau trong bài đăng này

Cách sử dụng WP_Query

Ngay cả khi bạn chỉ đang tìm hiểu các khía cạnh khác nhau của cơ sở mã WordPress, WP_Query là một lớp tốt để bắt đầu. Bây giờ, hãy chia nhỏ bốn cách khác nhau mà bạn có thể sử dụng nó trên trang web của mình.  

1. Bắt đầu với Vòng lặp tùy chỉnh

Một trong những cách tốt nhất để biết lệnh gọi WP_Query là thông qua Vòng lặp WordPress. Nếu bạn chưa biết Vòng lặp là gì, thì đây là một khái niệm quan trọng cần đọc tiếp

Vòng lặp là thứ gọi đến cơ sở dữ liệu yêu cầu nội dung bài đăng và hiển thị dữ liệu được trả về. Nó cũng hoạt động dựa trên các tham số đã đặt, chẳng hạn như số lượng bài đăng bạn muốn trang web của mình hiển thị trên một trang (điều mà bạn có thể định cấu hình trong menu Cài đặt > Đọc)

Những điều cơ bản của Loop trông như thế này

if ( have_posts() ) :
    while ( have_posts() ) : the_post();
        // Display post content
    endwhile;
endif;
?>

Tuyên bố đơn giản này về cơ bản là nói rằng nếu có bài đăng, chúng sẽ được hiển thị. Tất nhiên, bạn có thể thêm nhiều loại thẻ mẫu vào nền tảng này để tạo màn hình bạn muốn

Bạn cũng có thể chèn WP_Query vào Vòng lặp. Điều này cho phép bạn đặt các tham số về bài đăng nào sẽ được trả về. Hãy phá vỡ những gì nó sẽ trông như thế nào.  


// The Query
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {
    echo '

    ';
        while ( $the_query->have_posts() ) {
            $the_query->the_post();
            echo '
  • ' . get_the_title() . '
  • ';
        }
        echo '
';
} else {
    // no posts found
}
/* Restore original Post Data */
wp_reset_postdata();

Bạn sẽ thấy các câu lệnh if/while tương tự từ Vòng lặp cơ bản, nhưng có thêm một chuỗi WP_Query. Bất kỳ tham số nào được đặt ở đây sẽ xác định bài đăng nào sẽ được hiển thị.  

Ví dụ: nếu bạn muốn từ danh sách các bài đăng, bạn có thể thực hiện điều đó trong Vòng lặp với WP_Query.  

$query = new WP_Query( array( 'author' => -12 ) );

Bằng cách đặt cái này vào Vòng lặp, các bài đăng được hiển thị của bạn sẽ không còn bao gồm người dùng có số tác giả là “12”

Bạn có thể sử dụng với phương pháp này gần như vô tận. Bạn cũng có thể, chỉ để đưa ra hai ví dụ.  

2. Tranh luận. Xương sống của các truy vấn tùy chỉnh trong WordPress

Trong ví dụ trước, bạn có thể nhận thấy “($args)” là một phần của chuỗi. Đây là một phần quan trọng của truy vấn đề cập đến 'đối số' được bao gồm. Nó cho cơ sở dữ liệu biết chính xác những gì cần đưa vào dữ liệu trả về.  

Về cơ bản, các đối số này có thể được thiết lập để xác định kết quả chính xác mà bạn muốn hiển thị. Các đối số cũng có thể được sử dụng để thay đổi giá trị của các biến. Ví dụ: nếu bạn muốn thay đổi cách danh sách danh mục của mình xuất hiện trên trang, bạn có thể sử dụng đối số.  

Đối số của bạn sẽ xác định một mảng các biến và giá trị. Vì vậy, nếu muốn, bạn có thể sử dụng một đối số để xác định một mảng và yêu cầu cơ sở dữ liệu của bạn trình bày các danh mục theo thứ tự giảm dần. Ngoài ra, bạn có thể sử dụng phương pháp tương tự để loại trừ bất kỳ danh mục nào không chứa bài đăng.  

3. Tham số trong WP_Query. Danh mục, Thẻ và hơn thế nữa

Cho đến thời điểm này, chúng tôi chỉ đề cập đến các tham số khi chuyển. Tại thời điểm này, hãy xem xét kỹ hơn những gì họ thực sự có thể làm. Chức năng chính của chúng là cho phép bạn kéo các bộ sưu tập bài đăng được thiết kế tùy chỉnh.  

Một trong đó có thể được sử dụng trong tiêu đề của trang web của bạn là. Bạn có thể sử dụng điều này để chỉ định các danh mục cụ thể để hiển thị. Điều này được thực hiện bằng cách cung cấp số danh mục hoặc sên có liên quan.  

Ngoài ra, bạn có thể làm điều tương tự với. Tất nhiên, các tham số Danh mục và Thẻ thực sự chỉ là phần nổi của tảng băng chìm khi sử dụng WP_Query.  

4. Sửa đổi các đối tượng với các phương thức và thuộc tính

Mặc dù không nên thay đổi trực tiếp WP_Query như vậy, nhưng bạn có thể tương tác với chúng bằng cách sử dụng các phương thức. Về cơ bản, các phương thức giống như các hàm, trong khi các thuộc tính tương đương với các biến.  

WP_Query có. Các thuộc tính này bao gồm từ các thuộc tính “$posts” đơn giản đến các thuộc tính phức tạp hơn. Bất kể phương pháp nào được sử dụng để tương tác với chúng, dữ liệu sẽ được trả về dựa trên các tham số bạn chọn đặt tại chỗ.  

WP_Query so với. query_posts() trong WordPress

Điều đáng chú ý là có một cách khác để sửa đổi truy vấn chính trên trang của bạn. Đây là hàm query_posts(). Mặc dù điều này có thể hoạt động theo cách tương tự như WP_Query, nhưng nó cũng có thể rất có vấn đề.  

Tham khảo mã WordPress thậm chí còn khuyên bạn không nên sử dụng chức năng này bên trong Vòng lặp chính của trang web của mình. Tốt nhất là tránh nó trong các plugin và chủ đề. Điều này là do nó sẽ ghi đè hoàn toàn truy vấn chính của bạn.  

Lớp WP_Query được ưu tiên hơn vì bạn cũng có thể 'đặt lại' Vòng lặp chính sau khi chạy truy vấn. Vì WP_Query cho phép bạn chạy nhiều truy vấn trong một vòng lặp, nên bạn cũng sẽ muốn hiểu cách triển khai hàm wp_reset_postdata

Nếu bạn đã nhúng một vòng lặp phụ bên trong Vòng lặp WordPress chính, chức năng đặt lại sẽ được đặt ở cuối và trông như thế này.  

Điều này sẽ khôi phục các thẻ mẫu mặc định và bạn sẽ quay lại mọi thứ như trước khi vòng lặp phụ của bạn được bắt đầu.  

Tùy chỉnh trang web WordPress của bạn với WP Engine

Có thể điều chỉnh cách các mặt hàng được hiển thị trên trang web của bạn chỉ là một trong những lợi ích của việc sử dụng WordPress. Hiểu WP_Query và tận dụng các công cụ được cung cấp trên trang tài nguyên dành cho nhà phát triển có thể giúp bạn xây dựng các trang web thực sự tùy chỉnh.  

Tại WP Engine, chúng tôi mong muốn đảm bảo rằng bạn có các tài nguyên cần thiết để xây dựng các trang web hấp dẫn. Kiểm tra các giải pháp WordPress và kế hoạch lưu trữ của chúng tôi ngay hôm nay.  

Mối quan hệ giữa WP_Query và vòng lặp WordPress là gì?

tham gia 1. 5 triệu trang web tin tưởng WP Engine làm máy chủ lưu trữ WordPress của họ

Xem kế hoạch của chúng tôi

bài viết liên quan

  • Cách trích xuất tham số URL trong WordPress
  • Cách hiển thị bài đăng từ một danh mục cụ thể trong WordPress
  • Cách sử dụng jQuery trong WordPress
  • Cách thêm cuộn vô hạn vào WordPress
  • Cách tạo Wiki bằng WordPress

Đặt mua

Nhận các mẹo, thủ thuật và tin tức WordPress hàng tuần được gửi đến hộp thư đến của bạn

Địa chỉ email

Nộp

Trang web này được bảo vệ bởi reCAPTCHA và áp dụng Chính sách bảo mật và Điều khoản dịch vụ của Google. Tìm hiểu thêm về Chính sách quyền riêng tư của WP Engine

Việc sử dụng WP_Query trong WordPress là gì?

WP_Query là gì? . Nó cho phép các nhà phát triển xây dựng các tìm kiếm phức tạp trong khi loại bỏ nhu cầu viết các truy vấn SQL riêng biệt. constructing queries to the WordPress database and returning posts, pages, or other custom objects to render on the page. It allows developers to build complex searches while removing the need to write separate SQL queries.

Vòng lặp truy vấn WordPress là gì?

Khối vòng lặp truy vấn là khối nâng cao cho phép bạn hiển thị các bài đăng dựa trên các tham số đã chỉ định ; . Trong WordPress, Vòng lặp có nghĩa là hiển thị dữ liệu cụ thể theo cách lặp đi lặp lại. Mỗi bài đăng thường hiển thị tiêu đề, tác giả, ngày tháng, nội dung bài đăng và nhận xét.

Vòng lặp WordPress chạy như thế nào?

Vòng lặp là mã PHP được WordPress sử dụng để hiển thị các bài đăng. Sử dụng Vòng lặp, WordPress xử lý từng bài đăng để hiển thị trên trang hiện tại và định dạng bài đăng đó theo cách nó phù hợp với tiêu chí được chỉ định trong thẻ Vòng lặp . Mọi mã HTML hoặc PHP trong Vòng lặp sẽ được xử lý trên mỗi bài đăng.

Làm cách nào để tạo WP_Query trong WordPress?

Cách sử dụng WP_Query .
Bắt đầu với Vòng lặp tùy chỉnh. Một trong những cách tốt nhất để biết lệnh gọi WP_Query là thông qua Vòng lặp WordPress. .
Tranh luận. Xương sống của các truy vấn tùy chỉnh trong WordPress. .
Tham số trong WP_Query. Danh mục, Thẻ và hơn thế nữa. .
Sửa đổi các đối tượng với các phương thức và thuộc tính