WordPress親固定ページで子ページの記事一覧を表示させる方法

サイト型アフィリエイトサイトを作る時に便利なのが固定ページの利用です。
Wordpressの固定ページにあるページ属性の親子関係を使うと、カテゴリーカテゴリ内の記事、という感じで階層ページを作ることができるのです。
このコードは親ページ用です。

<!--▽メインコンテンツ-->
<div id="main-contents">

<?php if (have_posts()) : ?>

<?php while (have_posts()) : the_post(); ?>

<div class="post">
<h2 class="page-title"><?php the_title(); ?></h2>


<div class="contents clearfix">

	<div class="article">
	<!--本文-->
	<?php the_content(); ?>
	<!--/本文-->
	</div>
	<!--/article-->

	<?php if(get_the_tags()){ ?>
	<div class="post-tag">
	<p>タグ:<?php the_tags('', ', '); ?></p>
	</div>
	<?php } ?>

</div>

</div>
<!--/post-->

<?php endwhile; ?>

<?php get_template_part('social-button'); 
wp_reset_postdata();
else : ?>

<h2>お探しの記事は見つかりませんでした。</h2>
<div class="contents">
<p>検索キーワードを変更し下記より再検索してください。</p><br />
<?php get_search_form(); ?>


</div>

<?php endif; ?>

<?php
$paged = (int) get_query_var('paged');
$args = array(
	'posts_per_page' => 3,
	'paged' => $paged,
	'orderby' => 'post_date',
	'order' => 'DESC',
	'post_type' => 'page',
	'post_parent' => $post-> ID,
	'post_status' => 'publish'
);
$the_query = new WP_Query($args);
?>


<?php if ( $the_query->have_posts() ) : ?>
<?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>


<div class="post">
<h2 class="post-title"><a href="<?php the_permalink() ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>

<div class="contents clearfix">

	<div class="article">

	<!--アイキャッチ画像-->
	<?php if(has_post_thumbnail()){ ?>
	<div class="left">
	<?php echo the_post_thumbnail(); ?>
	</div>
	<?php } ?>
	<!--/アイキャッチ画像-->

	<!--本文抜粋-->
	<?php the_excerpt(); ?>
	<p class="link-next"><a href="<?php the_permalink() ?>">「<?php echo(get_the_title('', '', false)); ?>」の続きを読む</a></p>
	<!--/本文抜粋-->

	</div>
	<!--/article-->

</div>
<!--/clearfix-->

</div>
<!--/post-->


<?php endwhile; ?>
<?php endif; ?>

<?php
if ($the_query->max_num_pages > 1) {
	echo paginate_links(array(
		'base' => get_pagenum_link(1) . '%_%',
		'format' => 'page/%#%/',
		'current' => max(1, $paged),
		'total' => $the_query->max_num_pages
	));
}

wp_reset_postdata();
?>



</div>
<!--△メインコンテンツ-->

上記のコードは、親ページに書いた内容を表示させてその下に属する子ページ一覧を表示させるコードになっています。

'posts_per_page' => 3,

で子ページの表示件数を変更できます。

追記:
子ページを表示させるプラグインで使えそうなもの自分用メモ

  • Child Pages Shortcode
  • Shop Menu(ショップの商品を表示させるプラグイン)

関連記事リスト

2013-11-05_10h39_09

WordPressでAPIを使ったサイト構築方法:ハーブティー専門店検索サイト編
WordPressでAPIを使ったサイト構築方法:ハーブティー専門店検...

2012-08-07_16h02_13

カテゴリごとに異なる画像やテキストを表示させるWordPressプラグイン(Category Meta plugin)
カテゴリページごとに違う画像やテキストを挿入したい場合に使えるプラグイ...

IMG_0799

Googleアドセンス収益アップセミナーに参加して改善したこと。
大阪Googleアドセンス収益アップセミナーに参加してWordPres...

2012-07-28_20h52_48

コメントスパム対策プラグインAkismetのAPIキー(無料)を取得する方法
コメントスパム対策プラグインAkismetのAPIキー(無料)を取得す...

2013-01-31_11h24_36

カスタム投稿タイプを使ってカメラ専用のページを作る②
カスタム投稿タイプで専用ページを作る方法②です。今回はテンプレートの作...

taxonomy-term.phpで特定の親(固定ページ)をもつ子ページだけ表示させる方法
taxonomy-term.phpに特定の親ページをもつ子ページを表示...

2012-08-07_10h28_23

WordPressで簡単作成!スマホ対応サイトの作り方
WordPressで簡単に作成できるスマホ(スマートフォン)対応サイト...

2012-12-10_10h50_11

あるとちょっと便利なWordPressプラグイン3個
最近はサイト作りはWordPressが基本なのですが、入れているプラグ...

wordpressのデータベース(mySQL)に独自テーブルを作りデータを取り出す方法まとめ
WordpressのMySQLデータベースに独自テーブルを追加して、そ...

2013-07-01_09h50_49

サイトの読み込みページを早くするWordPressプラグイン「Quick Cache」
Googleのスコアカードでサイトの状況の「ページ読み込み時間のパフォ...

コメントを残す

このページの先頭へ