WordPress4.0に関して質問です。


投稿データの特定のカテゴリー(下記サンプルでは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(); ?>

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2014/12/05 09:34:36
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:rouge_2008 No.1

回答回数595ベストアンサー獲得回数351

ポイント250pt

投稿日は「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

id:mkusume

いつもご丁寧な解説誠にありがとうございます。確認したところ実現できました。

2014/12/05 09:34:04

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません