ホームページで 10 万件以上のレコードがある wp_post テーブルのフル スキャンを防止しようとしています。ページネーションなしで最初の 30 のみが必要です。
ページネーションを使用しておらず、post_per_page を使用してクエリを制限している場合でも、テーブル全体をスキャンしてから最初の 30 を返すか、1 行目から 30 行目に移動してから停止しますか?
テンプレートの読み込み中に WordPress ループが実行され、定義された制限で 1 回だけスキャンされます。この制限は、Settings > Readingで定義されます。
post_per_page
一方、 withを使用している場合はquery_posts
、クエリが再実行されます。大規模な Web サイトにはお勧めできません。参照:ここの追加の SQL クエリ セクション。