質問: 下記サイト構成のサイトをwordpress化しております。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/3d850ae22e8f084a5129e59b0ab4e82b.png) * ピンクで書いた文字を固定ページで作成。 * 緑の文字を投稿ページで作成。 * 赤の文字をカスタム投稿タイプで作成。 * ブログの記事一覧をindex.phpで作成(固定ページ) * ブログのカテゴリー一覧をarchive.phpで作成。(固定ページ) 以上のページ構成で間違い無いでしょうか? 特に理解が良くできていないのは index.php と archive.phpの使い分けで、ネットで調べるとどちらも記事一覧を表示するページとのことで、archive.phpをコピーしてindex.phpに貼り付けます。 という記事も見かけ、どのように記事一覧とカテゴリー一覧を切り分けるのかも迷っています。 1.添付画像のページ構成で間違っていないか。? 2.ブログのカテゴリー一覧をarchive.phpでカテゴリー一覧を表示するのと、ブログの記事一覧をindex.phpで表示するにはどちらもメインループでいいのか?メインループの中身は何か変える必要があるのか?(表示したい項目が違うのでおそらくループ内を書き換えなくてはいけないと考えているのですが、https://webst8.com/blog/wordpress-theme-howto-make/ のサイトではコピーして使いまわしているように見えます。) 3.メインループはそのサイト内で何回も使える物。という考えでいいのでしょうか? 断片的に情報を集めている形になってしまい、頭がこんがらがってしまいました。 アドバイスお願いします。
回答: > > 1.添付画像のページ構成で間違っていないか。? > > > 基本的に**要件**によりますので、 完全な正解はありません。 > > 特に理解が良くできていないのは index.php と archive.phpの使い分けで > > > index.phpは、**汎用構成ページ**となります。 例えば、投稿なのに、single.phpがない、って時も、index.phpの内容が適用されます。 なので、今回の場合は、 archive.phpをもう一種類用意して、 それぞれ、**ブログ一覧**と、**お知らせ**を構成する方が妥当と言えます。 しかし、index.phpでも、機能はしますので、 間違いではありません。 > > 2.ブログのカテゴリー一覧をarchive.phpでカテゴリー一覧を表示するのと、ブログの記事一覧をindex.phpで表示するにはどちらもメインループでいいのか?メインループの中身は何か変える必要があるのか?(表示したい項目が違うのでおそらくループ内を書き換えなくてはいけないと考えているのですが、 > > > 表示する内容が違う場合は、 `wp_query`メソッドを使って、ループの中身を調整します。 WordPressは、あらゆるものが、**内部的には投稿**という扱いなので、 ループ自体は同じものを使います。 > > 3.メインループはそのサイト内で何回も使える物。という考えでいいのでしょうか? > > > サイト内どころか、同じページ内でも、基本的には何度でも使えます。 上記の通り、`wp_query`メソッドで、都度ループの内容を調整します。 ただし、あまり無駄なループを繰り返すと、ページパフォーマンスが落ちますので、乱用は禁物です。