WordPress

WordPressでWebページに投稿一覧を作る方法を解説

WordPressは2003年に始まったブログ投稿管理システムです。今でも開発が盛んに行われており、全世界の半分弱のサイトがWordPressで作られていると言われています。今ではブログサイトだけではなく、コーポレートサイトでも使われています。

元々ブログ投稿管理システムとして開発されていたため、投稿システムはとても使いやすいです。WordPressでは投稿一覧を作成することも簡単にできます。記事一覧があれば、読みたいジャンルの記事や日付で絞れるので、ユーザーにとって読みやすいサイトになります。

また、コーポレートサイトの新着情報の更新にも使えます。本記事ではWordPressでWebページに投稿一覧を作るための方法を解説します。

WordPressで作ったWebページに投稿一覧を作る方法

投稿一覧の種類を決める

まず、どんな投稿一覧を作りたいかを決めます。例えば、最新記事一覧を作りたいのか、カテゴリー別の一覧、日付別の一覧を作るのかを決めます。なぜなら、一覧の種類ごとにファイルを作らなければいけないためです。

不要な物を作っても時間がもったいなので、最初に一覧表示させたいものを決めて、必要なものだけ作るようにします。サイトの全体設計の段階で用意しておくことがおすすめです。

コードを書くファイルを準備する

次にコードを書くためのファイルを準備します。ここでファイル名をつけるときに注意が必要です。テンプレート階層と呼ばれるWordPressで決められたファイル名をつけなければ、コードがうまく動かない可能性があります。

下の表にファイル名をまとめていますので、確認してください。

ファイル名表示する一覧
archive.php全記事一覧
date.php日付、月、年別
category.phpカテゴリー別
tag.phpタグ別
taxonomy.phpタクソノミー別
author.php投稿者別

コードを書く

ファイルが準備できたらコードを書いていきます。コードは以下のように書きます。下のコードではサムネイルとタイトル、記事の内容を表示させています。

<?php
if ( have_posts() ) {
  while ( have_posts() ){
    the_post();
    ?>
    <div>
  <?php the_post_thumbnail(); ?>
      <h2>
        <?php the_title(); ?>
      </h2>
      <p>
        <?php the_content(); ?>
      </p>
    </div>
    <?php
  }
}
?>

if( have_posts()){ ~ }の部分で投稿記事があれば、投稿記事を表示させるということを宣言しています。そして、while(have_posts()){the_post(); ~ }の部分で記事ページの取得を行っています。

一覧に表示させたい項目はPHPのコードで決めることができます。例えば、タイトルを表示させたい場合は<?php the_title(); ?>で表示させています。表示させたい項目を決めるためのコードは下の表にまとめています。

表示させたい項目コード
タイトルthe_title();
本文the_content();
アイキャッチ画像the_thumbnail();
投稿者the_author();
時間the_time();

メインループとサブループ

WordPressでは投稿一覧を「ループ」という仕組みを使っています。ループとは繰り返し処理のことをいいます。プログラミングの3大要素の「反復」にあたります。コンピュータは計算能力の速さを利用して、繰り返しの処理が得意です。

WordPressの記事一覧はコードを繰り返して表示させることで複数の記事を一覧として表示させます。WordPressには2種類のループがあります。「メインループ」と「サブループ」です。

メインループは元々決まっているテーマを使って繰り返し処理を行うことです。元々決まっているテーマとはWordPressで決められた投稿一覧を表すファイル名に記述されたテーマのことです。

WordPressではテンプレート階層といって、ページの役割ごとにファイル名が決められています。カテゴリー一覧は「category.php」、固定ページは「page.php」、記事ページは「single.php」という感じに決まっています。

つまり、メインループはテンプレート階層に決められたファイル名に対して同じ処理を繰り返すことです。

一方、サブループはテンプレート階層にとらわれずに使えるループです。トップページに最新投稿一覧を作るときによく使われます。条件設定によって記事からデータを引っ張れば、どこでも使えるループです。しかし、コードが長くなるのが欠点です。

テンプレート階層については下のページを参考にしてください。

WordPress Codex -テンプレート階層-

投稿一覧を作るためのプラグイン

紹介した実装方法は自分でカスタマイズがしやすく思い通りに表示させることが可能です。しかし、PHPのコードを使うので、PHPの学習が必要です。PHPの学習には時間がかかる上、コードを思い通りに動かそうと思えば、さらに時間が必要です。

すぐに投稿一覧を作成したい人はプラグインを使うことをおすすめします。プラグインを使えば、PHPのコードが書けなくても簡単に投稿一覧を作ることが可能です。投稿一覧を作るためにおすすめのプラグインは下の3つです。

  • Display Posts Shortcode
  • List Category posts
  • WordPress Popular Posts

プラグインはインストールすれば、簡単に投稿一覧を実装できます。しかし、カスタマイズ性が低いので、自分の思ったようなページにならないこともあります。初期はプラグインでもいいと思いますが、自作できるようになるまでのつなぎとして使うことをおすすめします。

まとめ

投稿一覧はブログだけでなく、コーポレートサイトなどでの新着情報で使われることもよくあります。投稿一覧を作っておくことで、投稿ページに最新の情報を更新すればコードを書き換えなくても、最新情報を掲載することができます。

情報社会がどんどん加速していく、情報を出す速度は企業にとっても個人でブログをやっている人にとっても重要です。いかに簡単かつ早く情報を出せるかはサイトから生み出す利益に直結してくると思います。

情報の波に乗れるようにWordPressの機能である投稿一覧を作って、サイトで表示させるようにすることをおすすめします。