3

ページのコンテンツ部分に5つの個別の「モジュール」をロードするWordpressテーマのテンプレートページを作成することを計画しています。これらのモジュールは、それぞれ異なるカテゴリの最新の4つの投稿を表示することを目的としています(このように機能します)。

ループのためにこれにアプローチするための最良の方法は何ですか?

page.phpはwhilehave_postsループを呼び出してテンプレートを実行するため、テンプレートphp自体には5つのモジュールがあります。通常、私はしばらくhave_postsを実行してクエリを実行しますが、これを1ページ内でしばらくhave_postsを5回実行すると、問題に他なりません。

これを達成するためのより便利な方法はありますか?

4

1 に答える 1

2

はい、複数のループを実行するための推奨される方法は、ループごとに新しい WP_Query オブジェクトを作成することです。for ループで使用する have_posts 関数などをご存知ですか? 彼らはただのヘルパーです。これらのメソッドは WP_Query オブジェクト内にも存在するため、作成するオブジェクトごとに 1 つのループを作成できます。

ここでそれについて読んでください:http://codex.wordpress.org/Class_Reference/WP_Query

get_postsも思い浮かびます。しかし、その関数を使用して実際の Wordpress ループを構築することはできません。数値配列で投稿を返すだけだからです。

于 2013-02-10T15:18:42.263 に答える