投稿データの特定のカテゴリー(下記サンプルではtest)のものを抽出して
一覧表示をさせたいのですが日付(投稿日)を表示させるには
下記サンプルをどこを修正したらよいのでしょうか。
ご教授お願い致します。
<?php
global $post;
$top_news = get_posts( array(
'category_name' => 'test', // カテゴリーのスラッグが'test'
'posts_per_page' => 5, // 1ページでの表示件数が5件
) ); ?>
<ul class="postList">
<?php foreach( $top_news as $post ) : setup_postdata($post); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
<?php wp_reset_postdata(); ?>
投稿日は「the_date()」、投稿時刻は「the_time()」というテンプレートタグがあります。
関数としては、投稿日は「get_the_date()」、投稿時刻は「get_the_time()」があります。
日時の表示形式は、デフォルトでは管理画面→「設定」→「一般」の「日付のフォーマット」および「時刻フォーマット」が適用されます。
※どちらも日付の形式を指定して渡すと、日付と時刻の両方を表示できます。
※「the_date()」は同日投稿の記事が複数ある場合、先に表示する投稿に1回だけ表示するので、以降の同日投稿の記事にも表示したい場合は、「the_time()」で日付の形式を指定して使用するか、あるいは「get_the_date()」を使用してください。
※WordPressのテンプレートタグは出力まで行います(※引数で制御できるタグも有り)が、関数は取得のみなので「echo」で出力する必要があります。
※日付の形式はPHPの「date()」関数で利用する書式が使えます。
・PHP: date - Manual
http://jp2.php.net/manual/ja/function.date.php
これらのテンプレートタグまたは関数を、記事表示のループ処理内の任意の箇所に記述します。
・テンプレートタグを使って記事タイトルの後ろに日付のみ表示する場合(※同日投稿には非表示)
<ul class="postList"> <?php foreach( $top_news as $post ) : setup_postdata($post); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <?php the_date(); ?></li> <?php endforeach; ?> </ul>
※管理画面で設定した日付フォーマットで表示されます。
・テンプレートタグを使って記事タイトルの後ろに日時を表示する場合(※同日投稿にも表示)
<ul class="postList"> <?php foreach( $top_news as $post ) : setup_postdata($post); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <?php the_time("Y年n月j日 H:i"); ?></li> <?php endforeach; ?> </ul>
・関数を使って記事タイトルの後ろに日付のみ表示する場合(※同日投稿にも表示)
<ul class="postList"> <?php foreach( $top_news as $post ) : setup_postdata($post); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <?php echo get_the_date(); ?></li> <?php endforeach; ?> </ul>
※管理画面で設定した日付フォーマットで表示されます。
・関数を使って記事タイトルの後ろに日時を表示する場合(※同日投稿にも表示)
<ul class="postList"> <?php foreach( $top_news as $post ) : setup_postdata($post); ?> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <?php echo get_the_date("Y年n月j日 H:i"); ?></li> <?php endforeach; ?> </ul>
・テンプレートタグ/the date
http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/the_date
いつもご丁寧な解説誠にありがとうございます。確認したところ実現できました。
2014/12/05 09:34:04