カスタム投稿タイプを使って
「お知らせ」を作ってます。
公開日を表示したいのですが、
archive-news.php
では、以下の記述で正しく表示されるものの、
トップページではなぜか、公開日ではなく同じ日付がどの投稿にも表示されてしまいます。
その日付は、WordPressをインストールした頃の日付です。
<?php the_time; ?>
そこで、カスタムフィールドを使ってみることを考えて試したところ、
以下記述で、
archive-news.php
ではやはり正しく表示されるものの、
トップページではnullになります。
<?php $value = get_post_meta( get_the_ID(), '名称', true ); if( $value ){ echo $value; } ?>
色々確認したところ、
<?php get_the_title; ?> <?php get_the_content; ?>
は出力されるものの、
抜粋も出力されませんでした。
考えられる原因、
または
とりあえずこの問題はおいておくとして、
タイトルや、コンテンツに書く、という方法以外で
指定した日付を出力するための良い方法を思いつく方いたら、
お願い致します。
--
追記です。
トップページに限らないようで、
他の固定ページでもダメでした。
archiveやsingleなどの投稿ページじゃないと出せないのでしょうか?
調べてもそういった情報が見つからずでして。
--
再追記です。
記述内容の詳細は下記の感じです。
<?php $args = array( 'posts_per_page' => 10, 'post_type' => 'news', 'orderby' => 'date', 'order' => 'DESC' ); $my_posts = get_posts($args); ?> <ul> <?php foreach ($my_posts as $post) : setup_postdata($post); ?> <li> <a href="<?php echo get_permalink($post->ID); ?>"> <div> <time> <?php $value = get_post_meta( get_the_ID(), 'news_date', true ); if( $value ){ echo $value; } ?> </time> <h2><?php echo get_the_title($post->ID); ?></h2> </div> </a> </li> <?php endforeach; ?> <?php wp_reset_postdata();?> </ul>
回答1件
あなたの回答
tips
プレビュー