query_posts() 是一個(gè) WordPress 函數(shù),用于修改主循環(huán)中的查詢參數(shù)。它允許你根據(jù)自定義參數(shù)篩選文章,而不是使用默認(rèn)的所有文章查詢。

以下是一個(gè)使用 query_posts() 的示例,該示例在自定義循環(huán)中顯示最近的 5 篇文章:

<?php
// 使用 query_posts() 自定義查詢參數(shù)
query_posts(array(
    'posts_per_page' => 5, // 顯示 5 篇文章
    'orderby' => 'date',    // 按日期排序
    'order' => 'DESC'       // 降序排列,最近的文章在前
));
// 開始循環(huán)
if (have_posts()) : while (have_posts()) : the_post(); ?>
    <div class="post">
        <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
        <p><?php the_excerpt(); ?></p>
        <p>Posted on <?php the_time('F jS, Y'); ?> by <?php the_author(); ?></p>
    </div>
<?php endwhile; else: ?>
    <p>Sorry, no posts to display.</p>
<?php endif; ?>
// 重置查詢
wp_reset_query();
?>

在這個(gè)示例中,我們使用 query_posts() 函數(shù)來自定義查詢參數(shù)。我們?cè)O(shè)置 posts_per_page 為 5,以便只顯示最近的 5 篇文章。我們還設(shè)置了 orderby 和 order 參數(shù),以按日期降序排列文章。

在自定義循環(huán)結(jié)束后,我們使用 wp_reset_query() 函數(shù)重置查詢,以便在后續(xù)的循環(huán)中使用默認(rèn)查詢參數(shù)。

請(qǐng)注意,盡管 query_posts() 函數(shù)可以實(shí)現(xiàn)自定義查詢,但它并不推薦使用,因?yàn)樗鼤?huì)改變?nèi)植樵儯赡軐?dǎo)致一些不可預(yù)見的問題。在大多數(shù)情況下,建議使用 pre_get_posts 鉤子或 WP_Query 類來實(shí)現(xiàn)自定義查詢。

另外一種用法:

<?php global $query_string; // 必需
$posts = query_posts($query_string.'&posts_per_page=3&cat=-6,-9&order=ASC'); ?>
<?php // 循環(huán)內(nèi)容?>
<?php wp_reset_query(); // 重置 query ?>

3,為顯示數(shù)量

-6,-9為排除分類,如果是指定分類比如,指定分類ID為8的分類,就寫成cat=8即可。