ループ処理とは何か
HTMLとCSSを使って作成した静的なサイトをワードプレス化するときに、ほぼ必須で使用するもの=「ループ処理」です。
ループ処理は、トップページでの新着情報の一覧や、各種アーカイブページ(記事の一覧ページ)サイドバーの閲覧数ランキングなどに使われます。
ワードプレスに使用するループ処理には、主に2種類あり、メインループとサブループに分かれます。今回はこの2つの違いについて自分なりに分かりやすく解説します。
メインループとは
まずは、メインループについて。コードは以下のようになります。

各コードの意味はこのような感じです。
while (have_posts()):→記事がある間はこの処理を繰り返す
the_post()→次の記事を取得する
→投稿記事のURLを取得、出力する
→投稿記事のタイトルを取得する
index.phpやarchive.phpに上記のメインループを記述した場合、通常の「投稿」より対象の記事のURLを取得、出力します。
※カスタム投稿タイプなど使用する場合は、次のサブループについての解説を使います。
ワードプレスは、リクエストされたURLによって取得するデータを判別し、その後にテンプレートを表示する仕組みとなっており、この「事前にデータ取得しなさいよ」と命令することをメインクエリと呼びます。
すなわち、メインクエリで取得したデータを繰り返し表示すること=メインループということになります。
先ほども書きましたが、例えば「index.phpにカスタム投稿タイプで作成した記事のデータを取得、表示したい」場合は、次に紹介するサブループを使い必要があります。
サブループとは
メインループに対して、サブループというものが存在します。
メインループにメインクエリ、という概念があるように、サブループにもサブクエリという概念が存在します。
「メインクエリ以外のデータを取得したい」
こんな時はサブクエリを使って、自分で取得するデータを指定する必要があります。
サブループを使用した場合のコードは下記のような例です。

‘post_type’ => ‘Products’,でどういう投稿タイプなのかを指定し(この場合は「Product」というカスタム投稿タイプ)
‘post_status’ => ‘publish’,で公開済みの投稿だけを表示するように設定
‘posts_per_page’ => 5で、表示する投稿の数を指定します。(この場合は5個まで、全件表示の場合は-1にする)
ちなみに、上記のコードサンプルに書かれたテンプレートタグの意味を紹介します。
→公開した日時を取得、出力します。
→投稿タイプに対応したURLを取得、出力
→指定した投稿のタイトルを取得、出力
→指定した投稿の本文を取得、出力
は、CSSと組み合わせることで、「3行だけ表示して末尾に…を表示する」といったことが可能になります。
サブループを記述するときは wp_reset_postdata();
このほかにも、自分で記述することでカテゴリを指定したり、記事の並び順を指定したり、様々なカスタマイズが可能になります。
2つの違いを理解して、思い通りのWordPressを作る
正直それぞれの意味をちゃんと理解しなくても、ある程度のものを作ることはできます。ですが、それぞれのタグの意味をきちんと理解することで、作業効率もアップしますし、応用も効くのでより高度なものの作成ができます。ループ処理は確実に使用するものですので、この機会にぜひ覚えてみましょう!