要点
過去のイベント一覧を年別で表示させたいです。
カスタム投稿タイプnewsを設け
カスタムフィールドでイベントの開催日(event)を設定し、
eventで指定した年度の記事一覧を表示させたいのですがうまくURLが生成されません。
【想定していたURL】(2020年の記事一覧を表示する場合)
http://hoge.com/2020/?meta_key=event
上記のURLを指定すると、カスタム投稿内容ではなく「投稿」の記事一覧が表示されます。
http://hoge.com/news/2020/?meta_key=event
http://hoge.com/news/date/2020/?meta_key=event
これらは404エラーでした。
ちなみに
http://hoge.com/2020/?post_type=news
と指定すると、投稿日の年別でちゃんとソートされます。
(今回は開催日ベースでのソートを希望です。)
コード
archive-news.php
php
1<?php 2$args = array ( 3 'numberposts' => -1, // 情報を全件取得 4 'post_type' => 'news', // カスタム投稿タイプ名 5); 6$posts = get_posts( $args ); 7if( $posts ) : foreach( $posts as $post ) : setup_postdata( $post ); ?> 8 <li> 9 <p><?php the_field('event'); ?></p> 10 <p><?php the_title(); ?></p> 11 </li> 12<?php endforeach; ?> 13<?php else://予定がない場合?> 14 <li>現在、イベントの予定はありません。</li> 15<?php endif;wp_reset_postdata(); //クエリのリセット ?> 16 </ul> 17 </div> 18</div>
補足情報
※カスタム投稿タイプの作成は「Custom Post Type UI」
カスタムフィールドの作成は「Advanced Custom Fields」を使用しています。
カスタムフィールドeventの
表示フォーマット・返り値のフォーマット共に「Y/m/d」
一般のパーマリンク設定は
日付と投稿名(http://hoge.com/2021/06/07/sample-post/)で設定しています。
functions.phpにはカスタム投稿に関する記述は特に何も記述していません。
何か記述が必要なのでしょうか?
本来年別で記事をソートするメニューを作成する予定でしたが
そもそもソート別のURLがわからず、何もできない状態です...
今日1日中原因を調べていましたがわからずじまいです。
無知なもので、大変恐縮ですが
原因わかる方いましたら、ご教示いただけると助かります。
回答1件
あなたの回答
tips
プレビュー