【WordPress】カスタム投稿タイプのページを本番公開したが404になる原因と、その解決方法

【WP】カスタム投稿タイプが表示できない原因と対策

記事内に広告を含みます

本番反映したカスタム投稿タイプが404エラーになる!?

WordPressでカスタム投稿タイプを作成し、ACFの設定(JSON)をインポートして、テンプレートファイルも正しく配置したのに、一覧ページや詳細ページにアクセスすると404 Not Foundになってしまう。

WPに慣れてないと結構焦るこの問題のシンプルな原因と解決方法を教えます。

結論:パーマリンク設定を再保存するだけ

WordPressの管理画面で「設定」→「パーマリンク設定」を開き、何も変更せずに「変更を保存」を押下するだけで解決します。

たったこれだけです。

WordPressのリライトルール

WordPressは、URLとページの紐付け(リライトルール)をデータベースにキャッシュしています。

例えば、companyというカスタム投稿タイプを作成すると、以下のようなURLが使えるようになるはずです。

一覧ページ:/company/

詳細ページ:/company/{slug}/

しかし、このURLルールは自動的には更新、反映されません

管理画面からパーマリンク設定を再保存で解決

1. WordPress管理画面にログイン

2. 左メニューから 「設定」→「パーマリンク設定」 をクリック

3. 何も変更せずに「変更を保存」ボタンをクリック

この操作により、WordPressは内部的にすべてのカスタム投稿タイプのURLルールを再生成します。

作成したカスタム投稿タイプが反映されていないように見える時は、このようにパーマリンク設定の再保存を行なってください。

参考

https://developer.wordpress.org/reference/functions/register_post_type/

https://developer.wordpress.org/reference/functions/flush_rewrite_rules/