Warning: count(): Parameter must be an array or an object that implements Countable in /home/accentstyle/accent-web.jp/public_html/wp-content/plugins/wordpress-ping-optimizer/cbnet-ping-optimizer.php on line 533

WordPress パーツファイルの役割

WordPress はいくつかのパーツファイルで構成されています。
この構成を理解してしまえば楽になれるはずです。(たぶん・・・)

私も、この構成がわからない間は難しく感じていました。わかってしまえば簡単かも?!

最初は、大きくざっくりと把握しましょう。

  1. header.php
  2. sidebar.php
  3. footer.php

この3つは、どのページでも表示される「ヘッダー」「フッター」「サイドバー」です。2カラム表示しない場合には 「sidebar.php」にあたるサイドバーはいりません。

図でしめすとこのような配置関係です。

ワードプレス パーツ構成

最低限必要なテーマファイル で「content.php」というものがあります。これは実際には必須ではありません。ですが、上の画像のように記事を一覧で表示する場合には、別のパーツファイルにして読み込むことでテーマファイルの可読性をよくします。上の画像では白枠で区切られた一つの記事のかたまりが「content.php」になります。
ちなみに、get_template_part という関数で読み込めばいいのでテーマファイルを作るときに別名でも構いません。

「comments.php」これは下のように各記事のコメント欄のパーツです

以上、テーマファイルの配置関係です。
これらをもとにナビゲーション(メニュー)はどこに配置しよう?とか考えていきます。
上に配置したいなら、header.phpに書けばいいですし横に置きたいならsidebar.phpに書けばいいということになります。

さて、ヘッダーやフッターなどのパーツファイルは各ページで読み込む必要があります。

  • ヘッダーパーツなら「get_header()」
  • フッターパーツなら「get_footer()」
  • サイドバーパーツなら「get_sidebar()」
  • コメントパーツなら「comments_template()」

これらの呼び出しはルール上絶対として覚えちゃいましょう。
実際にindex.phpを除いてみましょう。

<?php get_header(); ?>
<?php if ( have_posts() ) : ?>
<!-- entry -->

<section class="entry-list">
<?php while ( have_posts() ) { the_post(); get_template_part( 'content', get_post_format() ); } // ページナビゲーション the_posts_pagination( array( 'prev_text' => '< PREV', 'next_text' => "NEXT >",
) );
?>
</section>

<!-- /entry -->
<?php endif; ?>
</main>
<!-- /main -->
<!-- sidebar -->
<?php get_sidebar(); ?>
<!-- /sidebar -->
</div>

<!-- /container -->
<?php get_footer(); ?>

get_header() get_sidebar() get_footer()は見つかりましたか?
このように各ページの共通部分をパーツ化し読み込みます。