子ページに属する孫ページ一覧を作り新着マークを付けたい。
-
初めまして。お世話になります。
固定ページ(子ページ)に、そのページに属する孫ページ一覧を表示させて、新規孫ページに新着マークを付けたいと考えています。現在は子ページが10件程度(今後も増える)、孫ページは数え切れないほどあります。
それぞれ該当の子ページごとに、- リンク付き孫ページタイトル カスタムフィールドの値 作成日
- リンク付き孫ページタイトル カスタムフィールドの値 作成日 new!
というような感じで子ページに孫ページ一覧を作りたいです。
現在下記のコードで一覧表示は成功しています。
(プラグインExec-PHPを使用して、子ページごとに直接記入しています。)<ul> <?php $pages = get_pages('sort_column=post_date&child_of=12345&sort_order=ASC'); foreach ( $pages as $page ) { $option = '<li><a href="' . get_page_link( $page->ID ) . '">'; $option .= $page->post_title; $option .= '</a> '; $option .= get_post_meta($page->ID, 'カスタムフィールドの名前', true); $option .= '</li> '; echo $option; } ?> </ul>
こちらを、さらに上記で書いたような形で、孫ページを作成した日付と新着マークを付けられないかと考えています。
新着マークは時間経過で消えるようにしたいです。
<?php $days=2; $today=date('U'); $entry=get_the_time('U'); $diff1=date('U',($today - $entry))/43200; if ($days > $diff1) { echo ' <img src="img/new.gif" />'; } ?>
試したコード
<?php $pages = get_pages('sort_column=post_date&child_of=12345&sort_order=ASC'); foreach ( $pages as $page ) { $option = '<li><a href="' . get_page_link( $page->ID ) . '">'; $option .= $page->post_title; $option .= '</a> '; $option .= get_post_meta($page->ID, 'カスタムフィールドの名前', true); $option .= get_the_date('Y.m.d'); $option .= '</li> '; echo $option; } ?>
これだと、子ページを作成した日付しか表示されませんでした。(当然?)
他にも色々試しましたが真っ白になるだけで、行き詰まっています。孫ページを作成する時に、日付もカスタムフィールドに入れて表示させるしかないでしょうか。
その場合、時間経過で消える「new!」は無理?Codexや検索をしてみましたが、キーワードが悪いのか探しだせませんでした。
全く別のやり方でも構いませんので、ご教示頂けたら助かります。
よろしくお願いします。
6件の返信を表示中 - 1 - 6件目 (全6件中)
6件の返信を表示中 - 1 - 6件目 (全6件中)
- トピック「子ページに属する孫ページ一覧を作り新着マークを付けたい。」には新たに返信することはできません。