固定ページを階層化し親ページに子ページ一覧を表示

WordPressの固定ページを階層化し親ページに子ページの一覧を表示するWordPressではブログ的な投稿ページの他に、固定ページというものが存在します。
固定ページには時間の概念がなく、投稿ページと別の使い方をすることにより、サイト内容がとても充実します。

今回はその固定ページを階層化し、親ページに子ページの一覧を表示する方法を紹介します。
プラグインを使わない方法ですので、細かなカスタマイズも自由自在です!

固定ページの階層化のさせ方

WordPressでの子ページの作り方簡単に子ページの作り方を説明します。
固定ページを作成・編集する際に、右側にあるページ属性部分のを指定するだけです。
この指定のみで、固定ページが階層化されます。

階層化をやめたい時には親なしを指定し、深く階層化させたい場合には、孫に当たるページで親を作成済みの子ページに指定すればOKです。

子ページ取得ループを作成する

子ページを作成したならば、子ページを取得し一覧表示をするループを作成してみましょう!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
	$child_posts = query_posts( 'numberposts=-1&order=ASC&orderby=post_title&post_type=page&post_parent=' . $post->ID );
	if ( $child_posts ) {
		foreach ( $child_posts as $child ) {
			$c_title = apply_filters( 'the_title', $child->post_title );
			$c_permalink = apply_filters( 'the_permalink', get_permalink( $child->ID ) );
			$c_image_id = get_post_thumbnail_id($child->ID);
			$c_image_url = wp_get_attachment_image_src($c_image_id, '', true);
?>
	<div class="child-pages">
		<a href="<?php echo $c_permalink; ?>">
			<img src="<?php echo $c_image_url[0]; ?>" />
			<p><?php echo $c_title; ?></p>
		</a>
	</div><!-- .child-pages -->
<?php
		}
	}
?>

上記サンプルでは、
  • すべての子ページのタイトル(子ページへリンク)
  • すべての子ページのアイキャッチ画像(子ページへリンク)
  • 一覧表示を囲っているdivタグのクラス名はchild-pages
というような内容となっています。
適宜ご自分の好みに合わせて変更をしてくださいね!

感想

WordPressにてサイト構築を行う場合に、通常の投稿や固定ページ、カスタム投稿タイプなどの様々な機能の使用を考えると思います。
それらの機能の中でも、この固定ページを使っている方は多いと思いますし、階層化できたら便利になると思います。
とても簡単に子ページの一覧表示もできましたので、もし自分のサイトに必要だと感じられた方は、ぜひお試しください!


関連記事

WordPressの画像を連続で投稿に挿入する 連続で画像を投稿に挿入
WordPressにて何枚もの画像を連続で挿入したい時があります。メディアを追加ウィンドウを自動で閉じないカスタマイズを紹介します。
WordPressで関連記事一覧を表示する方法 WordPressで関連記事を一覧表示する
WordPressなどで記事の隅っこによく見かける関連記事の一覧。プラグインを使用せずに実装する方法を紹介します。
アイキャッチ画像の上に半透明の帯と記事タイトルをテキスト表示 画像の上に半透明の帯とテキストを表示
最近よく見かける、画像の上に半透明の帯を表示しテキストを配置する方法。簡単なCSSで実現できますのでお勧めです。
WordPressの固定ページや投稿記事に個別にcssを追加する 固定ページや投稿記事ごとに個別のCSSとJavaScriptを追加
WordPressテーマのスタイルシートとは別に、記事やページごとに追加指定したいcssがある場合には、function.phpをカスタマイズすれば可能となります。JavaScriptも同様に可能です。
WordPressの記事タイトル一覧にアイキャッチ画像を表示する WordPressの記事タイトル一覧にアイキャッチ画像を表示
WordPressをカスタマイズして、記事タイトル一覧のページを作成している方も多いと思います。各タイトルと一緒にアイキャッチ画像を表示すれば、さらに見やすいページができあがります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>