サポート » 使い方全般 » phpでの日付のフォーマットに関して

  • 解決済 fumia813

    (@fumia813)


    先月御教授いただきまして、苦戦しましたがおかげさまで無事にページ分割と
    投稿日付の表示をさせることが出来ました。
    しかし日付表示に関しては行き詰ってしまいました。
    以下のコードの場合ですが・・・・

    <?php
    $paging_contents= get_posts( 'numberposts=-1&category=4' );
    if ( $paging_contents ) {
    $html_structure = '<li><a href="%1$s">%3$s,%2$s</a></li>';
    $html_list_wrapper= '<ul id="content">%1$s</ul>';
    $html_pagenate_links_wrapper= '<p class="pagenate_links">%1$s</p>';
    $content                    = '';
    foreach ($paging_contents as $q){
    $content .= sprintf( $html_structure, esc_url( get_permalink( $q->ID ) ), esc_html( $q->post_title ), esc_html( $q->post_date ) );
    }
    printf( $html_list_wrapper, $content );
    }
    ?>

    これで日付表示を「○月○日○曜」としたい場合、途中に
    “y年,m月,d日” $q->post_date
    としてみたりしましたが上手くいきません。
    それとも

    $date = '2013-01-01 00:00:00';
    echo date('Y年n月j日', strtotime($date));

    のような日付のフォーマットを入れればいいのでしょうか。
    そしてその場合、どこにいれればいいのでしょうか。

    2週間弄り倒した結果、表示されなくなったりしてすっかり
    怖くなってしまいました。
    ヒントだけでも教えてくださる方がいれば、どうかよろしくお願いいたします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • モデレーター jim912

    (@jim912)

    MySQLの日付形式をフォーマットしたい場合には、mysql2date 関数を使うと便利です。

    ○月○日○曜 と表示したい場合は、

    mysql2date( 'n月j日D曜', $q->post_date )

    のようになります。
    上記コードの

    esc_html( $q->post_date )

    の部分を差し替えてみてください。

    トピック投稿者 fumia813

    (@fumia813)

    jim912様

    ありがとうございました。無事表示させることができました。
    まったく見当違いのところを調べていたようです。

    周りにわかる者がいないので、焦っておりました。
    このような場所が本当にありがたいです。

    本当に感謝いたします。重ねて御礼申し上げます。
    ありがとうございました!

    トピック投稿者 fumia813

    (@fumia813)

    jim912様
    たびたび申し訳ありません。
    本文の

    esc_html( $q->post_title ), esc_html( $q->post_date )

    の部分は日付とタイトルの間に「,」が入ってしまいます。
    (〇月〇日〇曜,タイトル)というように・・・
    周辺の点を消してもページが真っ白くなってしまうだけなのでこれはまた別の問題でしょうか。

    トピック投稿者 fumia813

    (@fumia813)

    jim912様
    すみません、自分のうっかりミスで上記の件、無事解決しました。
    本当にありがとうございました^^

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「phpでの日付のフォーマットに関して」には新たに返信することはできません。