アプリ制作の勉強が全然できていません。。。どうも@yusukexpです。『絶対に挫折しないiPhoneアプリ開発「超」入門』を購入してみた!と買った本を紹介しているにもかかわらず申し訳ないですm(__)m
どうにか時間作って進めます!!

固定ページ(親)に固定ページ(子)の一覧を自動で表示させる!
さて、WordPressで固定ページを作成して、階層化することはあると思います。
例えば、進学塾を想定して、コースというページを作ります。それを親ページとして基礎コース・応用コースという子ページをそれぞれ作る感じです。その際に親ページには子ページのエントランスとしての機能(要は下層へ飛ぶリンクですかね)があればいい時に、子ページがもう絶対増えないというなら親ページを編集してリンクを貼っておいてもいいんですが、子ページが今後も増える可能性がある場合(今回でいうと特別進学コースとか、入門者コースなどが増えるかもしれない!)はいちいち編集するのは面倒ですよね。そんな時に自動で親ページに子ページのリンクやアイキャッチ画像などを追加してしまうコードを紹介します!
<?php
$parentId = get_the_ID();
$args = 'posts_per_page=-1&post_type=page&orderby=menu_order&post_parent='.$parentId;
query_posts($args);
if (have_posts()) : while (have_posts()) : the_post();
?>
<div class="col-md-6">
<div class="img-thumb">
<a href="<?php the_permalink(); ?>">
<div class="img-thumb-hover-left">
<i class="im-redo2"></i>
</div>
</a>
<?php
$image_id = get_post_thumbnail_id();
$image_url = wp_get_attachment_image_src($image_id, true);
?>
<img src="<?php echo $image_url[0]; ?>" class="filler responsive" alt="">
</div>
<h4 class="text-center">
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?>
</a>
</h4>
</div>
<?php endwhile;?>
<?php wp_reset_query(); ?>
<?php else:?>
<?php endif;?>
*classには特に意味はありません。最近使ったコードをひっぱてきたので残っているだけですw
ハイライトしている部分が普段良く使うループと違う箇所ですね。
2行目で現在の投稿のIDを取得して、$parentIdに保存してます。それを3行目でパラメータとして使用します。(コード部分を横スクロールしたら$parentIdが使われていると思います。
3行目の部分を順に日本語にしてみると、
全件表示+固定ページ+ページ順序順+親ページのIDが○○となります。
つまり、固定ページの中から親ページのIDが〇〇のページを(逆に言えば、親ページ〇〇の子ページを)ページ順序順(ページ属性で指定)に全件表示しろという命令になります。
14~18行目は子ページのアイキャッチ画像を出力するコードになります。
15行目で子ページのアイキャッチ画像のIDを取得して$image_idに保存します。次に、16行目でアイキャッチ画像のurlを取得します。そして、18行目で取得した画像のURLを出力しています。これで子ページのアイキャッチ画像が表示されます。
ちなみに、18行目の[0]を[1]にするとwidth、[2]にするとheightを出力します。
ですので、レスポンシブなサイトでなければ、下記のようなコードを使うと、アイキャッチ画像にもともとの幅と高さを持たせて出力できます。
<img src="<?php echo $image_url[0]; ?>" width="<?php echo $image_url[1]; ?>" height="<?php echo $image_url[2]; ?>" alt="">
とはいえ、コードなんか書きたくないよーという方には、Child Pages Shortcodeというプラグインを導入するとショートコードを書くことで、上記のコードとほぼ同じことができますので確認してみてくださいね!!

