single.phpを作っても治らない!WordPressのお知らせリンクが日付アーカイブになる原因と解決策
どんな状況だったか
トップページのテンプレート(front-page.php)にWP_Queryを使って最新の投稿を取得し、お知らせセクションとして表示する実装を追加しました。
$astha_news_query = new WP_Query([
'post_type' => 'post',
'posts_per_page' => 5,
'post_status' => 'publish',
'category_name' => 'oshirase',
]);
if ( $astha_news_query->have_posts() ) :
while ( $astha_news_query->have_posts() ) : $astha_news_query->the_post(); ?>
<a class="home-news-item" href="<?php the_permalink(); ?>">
<time><?php echo get_the_date('Y年n月j日'); ?></time>
<p><?php the_title(); ?></p>
</a>
<?php endwhile;
wp_reset_postdata();
endif;
コード自体は特に問題なく動いていて、トップページにはタイトルと日付のリンク一覧が表示されていました。
ところがリンクをクリックすると、個別記事ではなく投稿一覧(アーカイブ)が表示されてしまいました。
一覧に表示されている投稿をクリックしても、同じ画面でループするというありさまです。
WHY?
最初に試したこと:single.phpを追加してみた
「個別記事ページが表示されないなら、single.phpがないせいかもしれない」と考えて、子テーマに新規作成してデプロイしました。
child-theme/
└── single.php ← 新規作成
しかし、デプロイ後も表示は変わらず、アーカイブページが出続けます。
なぜsingle.phpでは直らなかったのか
single.phpが呼ばれるのは、WordPressが「このURLは個別投稿のページだ」と判断した場合、つまりis_single()がtrueのときだけです。
今回のURLはWordPress側が日付アーカイブとして解釈しており、is_date()がtrueになっていました。
そのためWordPressはsingle.phpではなくarchive.php(または親テーマのindex.php)を使い続けていたわけです。
single.phpの有無とは無関係に、URLのルーティング自体がアーカイブに向いてしまっているのが本当の問題でした。

原因:パーマリンク設定が日付アーカイブと衝突していた
投稿のURLを日付にしたかったので、パーマリンク設定を以下のようにしていました。
/%year%/%monthnum%%day%/
この設定では、2026年5月8日に投稿した記事のURLが次のように生成されます。
https://example.com/2026/0508/
%monthnum%(05)と%day%(08)がセパレーターなしで連結されるため、このURLはWordPressのルーティングから見ると2026年5月8日の日付アーカイブと見分けがつかない形式になっています。
個別記事のURLに直接アクセスしても、日付アーカイブとして処理されてしまい、single.phpが一切呼ばれないという状況でした。
解決策:パーマリンクに記事を一意に識別できる要素を加える
解決のポイントは、URLの中に記事名(%postname%)か投稿ID(%post_id%)を含めることです。
日付だけでなく記事を特定できる要素が入ることで、WordPressが正しく個別記事のURLとして認識できるようになります。
設定例
| 設定 | URL例 | 備考 |
|---|---|---|
/%postname%/ | /corporate-renewal/ | シンプルで推奨 |
/%year%/%postname%/ | /2026/corporate-renewal/ | 年別に整理したい場合 |
/%year%/%post_id%_%monthnum%%day%/ | /2026/123_0508/ | 今回採用した構造 |
変更手順
- WordPress管理画面 → 設定 → パーマリンク を開く
- 「カスタム構造」を選択し、
%postname%または%post_id%を含む構造に変更する - 「変更を保存」をクリック
今回は既存のURL構造をなるべく崩さない形で対応するために、次の構造を採用しました。
/%year%/%post_id%_%monthnum%%day%/
この設定にしたことで、the_permalink()が返すURLが日付アーカイブのパターンと衝突しなくなり、WordPressが正しくis_single() = trueと判断するようになりました。

修正後の動作確認
設定変更後、次のすべての動作を確認しました。
- 記事URLに直接アクセス →
single.phpが呼ばれ、詳細ページが表示される - 日付アーカイブURL(
/2026/05/08/)→ 引き続きアーカイブページとして正常に表示 - トップページのお知らせ一覧からのリンク → 詳細ページへ正しく遷移
個別記事ページとアーカイブページ、それぞれが意図どおりに機能するようになりました。
まとめ
今回の問題を整理すると、次のようになります。
| 項目 | 内容 |
|---|---|
| 症状 | お知らせリンクをクリックすると詳細ではなく日付アーカイブが表示される |
| 最初の仮説 | single.phpがないことが原因 |
| 本当の原因 | パーマリンク構造が日付アーカイブURLと衝突していた |
| 解決策 | %postnameまたは%post_idをパーマリンクに含める |
single.phpの不在とパーマリンク構造の問題は、別々の問題でした。
同じ症状が出た場合は、single.phpの確認と同時にパーマリンク設定も確認することをおすすめします。
パーマリンクに記事を一意に識別できる要素(%postname%や%post_id%)が含まれているかどうかを確認してみてください。

設定が難しそうだし間違えるのが心配・・・。

やりたいことは決まっているけど、どうやったら実現できるのかがわからない。
そんなときは、
知っている人や詳しい人に聞きながら進めるのが間違いないと思います!
IT関係の問題は専門用語も多く出てきて、説明を読んでもチンプンカンプンといったことはよくあります。
言葉の意味もわからずに設定してもうまく動かなかったり、間違った設定をしてしまう可能性もゼロではありません。
もし、安全に短時間で問題を解決したいと感じられたら、弊社のITサポートのご利用をご検討ください。
お客様の声


今なら通常5500円(税込)のところ1100円(税込)でサポートがご利用いただけます。
※割引料金でご利用いただく場合は、バナーをクリックして表示されるサポート申し込みページからお申し込みください。









ディスカッション
コメント一覧
まだ、コメントがありません
無料相談受付中!
ひとり起業家が時短化しながら最大の成果を出すための方法を教えます。
無料相談を予約する ▶「ライティングに時間がかかる…」
「メルマガのネタが思いつかない…」
「開封率が上がらない…」
そんなお悩みを生成AIで解決!
ラクして効果的なメルマガ運用を学ぶための無料相談を実施中!
✅️ 知識ゼロでメルマガ運用ロケットスタート
✅️ 開封率の高い件名を自動作成
✅️ ファンを作るステップメールの自動校正
✅️ ネタ切れゼロ!AIの活用術
✅️ スキル不要でプロと同等のライティングが可能
今なら無料相談だけでも豪華4大特典をプレゼント!
メルマガが迷惑メールになってしまう・・・
「メルマガが迷惑メールになってしまう・・・」
「メルマガの到達率を上げたい」
そんなあなたに朗報です!
今なら登録者限定で、
「迷惑メールにならない メールの作り方」をプレゼント!
詳しくは以下のリンクをクリック!
>> 今すぐメルマガの到達率をなんとかしたい新着記事
: IT活用
AIに任せてラクになった仕事、実例4つ公開します
ChatGPTを試したけど定着しない方へ。ブログ記事の下書き生成・問い合わせ対応 ...: WordPress
single.phpを作っても治らない!WordPressのお知らせリンクが日付アーカイブになる原因と解決策
WordPressのトップページに設置したお知らせ一覧のリンクをクリックすると、 ...: IT活用
PyCharmをアップデートする前に確認したいAI Assistantチャット履歴のバックアップ手順
PyCharmをメジャーアップデートするとAI Assistantのチャット履歴 ...: IT活用
PyCharmをアップデートしたらCodexのモデル選択が消えたときの対処法
PyCharm2026.1アップデート後にCodexのモデル選択UIが表示されな ...: ChatGPT
AIで過去の問い合わせメールを分析し、問い合わせ対応を整備してみた話
過去の問い合わせメールとサービス資料をもとに、AIで問い合わせ分類、返信テンプレ ...アーカイブ
カテゴリー
タグ
プロフィール
名前:株式会社アスタのヒロです。
毎日同じことの繰り返しに嫌気が差して、長年務めたIT関連の会社を退職。
現在はそれまでの経験を活かして、ITを活用した業務効率化支援とメルマガの導入/運用アドバイスをメインに活動中。
趣味は落語、将棋、釣り、日本酒(新潟限定)、料理、漫画、PCゲームと老人と若者が混在したような節操のない趣味だが、おかげで幅広い年齢層の人と雑談するのに困らないです(笑)
ブログでは仕事で得たノウハウをわかりやすい記事に変えて発信します。
知っておくと効率化につながるIT知識やメルマガの運用についてまとめています。
35歳の時に孫ができました。家族のためにも頑張ります!
【今なら初回1100円】