WordPress

指定した親ページの子ページを取得してみる

前回、「WordPressで指定した固定ページを読み込む方法」を書いたのですが今回は親ページを指定した子ページを読み込んでみようと思い、試してみたのでメモしときます

[ads_center]

get_postsとget_pageを使って取得する

まずは配列に必要なパラメータを格納します。そしてget_postsの引数にその配列を渡せば$post->IDで子ページのidを取得できるので、今度はそれをget_pageの引数にforeachを使って渡していきます。あとは必要な情報を出力できるようになります。

<?php 
$args = array(
	'post_parent' => 取得したい親ページid,
	'post_type' => 'page',
	'order' => 'ASC',
	); 
$posts = get_posts($args);
foreach($posts as $post) {
	$post_id = $post->ID; 
	$page_id = get_page($post_id);
	echo '<h3>';
	the_title();
	echo '</h3>';
	echo '<p>';
	echo the_excerpt();
	echo '</p>';
	echo '<a href="'; 
	echo the_permalink();
	echo  '">続きを読む</a>';
};
?>

これでタイトル、抜粋、各ページへのリンクが出力されます。抜粋ではなくて本文を表示したい場合は以下のようにsetup_postdata()に引数として $post配列を渡すと出力できるようになります。

foreach($posts as $post) {
setup_postdata($post);
$post_id = $post->ID; 
	$page_id = get_page($post_id);
	the_content();

これで本文も表示できるようになります。get_postsではなくてget_pages()だけを使っても似たような感じで出力できるのですが、使い分けるところがよくわかんないのでとりあえず今回はget_postsを使って取得してみました。

関連記事

  1. ツールバーが表示されない時の対処方法

    WordPress

    WordPressのツールバー(管理バー)が表示されない時の対処方法

    WordPressで自分のサイトにログインすると画面上部にツールバー(…

  2. WordPress

    wp_nav_menuでWordPressのカスタムメニューを表示させる

    カスタムメニューを試していたら改めて便利だなと思ったのでメモしときます…

  3. WordPressのログイン時のツールバー

    WordPress

    WordPressウィジェット内でPHPコードが使用できるプラグイン「PHP Code Widget…

    個人的にとてもうれしいプラグインを発見したので備忘録がてらメモしておき…

  4. WordPress

    WordPressでグーグルアナリティクスをフッターにadd_actionを使って表示させる

    WordPressにはadd_actionという便利な関数があります。…

  5. WordPress

    wp_list_commentsを使ってWordPressのコメント出力をカスタマイズする

    WordPressのコメントまわりをちょっと調べてたんですが、コメント…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

  1. ADR-3ML39シリーズ
  2. キュレル モイスチャーバーム
  3. FUJIFILM X-Pro3
  4. iPhone 11 ProとApple Watch Hermès
  5. cheero Energy Plus mini Wireless 4400mAh

アーカイブ

PAGE TOP