WordPressの投稿が404エラーを返すのを修正する方法(ステップバイステップ)

WordPressではすべて問題ないように見えても、投稿リンクが404エラーになることがありました。コンテンツの変更なしで、本来あるべきページが見つからないという状況です。

これは通常、設定の調整、テーマの切り替え、またはパーマリンクに静かに影響を与えるコードの追加の後によく発生します。サイトの他の部分が完全に機能している場合でも、特に驚かされることがあります。

予期しない404エラーが発生した場合、私たちは簡単なプロセスに従って投稿URLを元に戻します。推測も重いトラブルシューティングも不要です。このガイドで共有するのはまさにその方法です。

404エラーを修正し、投稿が正しく読み込まれるようにすることができます。

WordPressの投稿が404エラーを返すのを修正する方法

WordPressの投稿が404エラーを返すのはなぜですか?

WordPressで投稿が404「ページが見つかりません」エラーを表示するのには、いくつかの理由が考えられます。それらには以下が含まれます:

  • プラグインまたはテーマの競合:サイトにインストールしたプラグインやテーマが、WordPressのパーマリンクの処理方法に干渉することがあります。これにより、壊れたリンクや404エラーが発生する可能性があります。
  • カスタムコードの問題: ウェブサイトにカスタムコードを追加した場合、コードにエラーがあり、パーマリンクに影響を与えたり、その他の競合を引き起こしたりして、投稿が404エラーになる可能性があります。
  • .htaccessファイルの問題: .htaccessファイルは、WordPressがURLを構造化する方法に役割を果たします。このファイルが破損しているか、欠落していると、投稿やページで404エラーが発生する可能性があります。

404エラーが発生しているすべてのWordPress投稿を見つける方法

ソリューションに進む前に、このエラーが1つか2つの投稿にのみ発生しているのか、それとも複数の投稿に発生しているのかを把握しておくと良いでしょう。これにより、問題の範囲を特定し、最も適切な解決策を選択できます。

これを理解する簡単な方法の1つは、Google Search Consoleを使用することです。まだサイトをGoogle Search Consoleに送信していない場合は、WordPressサイトをGoogle Search Consoleに追加する方法に関するガイドをお読みください。

Google ボットがサイトをクロールしてインデックスを作成すると、Google Search Console は、サイトのパフォーマンスに関する詳細情報、および検出された 404 エラーを提供します。

どの投稿が404エラーを返しているかを確認するには、Search Consoleダッシュボードにログインできます。次に、「ページ」レポートに移動すると、すべてのエラーの詳細なリストが表示されます。

Google Search Consoleのページレポート

詳細については、ウェブサイトのトラフィックを増やすためのGoogle Search Consoleの使用に関するヒントのリストをご覧ください。これには、ツールを使用して404エラーを修正する方法に関するいくつかのヒントが含まれています。

それでは、WordPressの投稿が404エラーを返す場合の修正方法を見ていきましょう。以下のリンクを使用して、さまざまな解決策に直接ジャンプできます。

方法1:プラグインまたはテーマの競合とカスタムコードの問題を確認する

場合によっては、WordPressウェブサイトに追加したプラグイン、テーマ、またはカスタムコードがパーマリンクと干渉したり、競合を引き起こしたりして、404エラーにつながることがあります。私たち自身も、デモサイトでツールをテストしているときに経験したことがあります。

この問題を解決する1つの方法は、プラグインを一時的に無効にすることです。プラグインがWordPressのリンク処理を妨げることがあります。

プラグインを無効化した後、各プラグインを1つずつ再度有効化し、特定のプラグインを有効化した後に404エラーが再表示されるかどうかを確認できます。エラーが特定のプラグインを有効化した後に表示される場合、それが原因である可能性があります。

その後、そのプラグインに関連する解決策をGoogleで簡単に検索するか、プラグイン開発者にサポートを依頼することができます。

同様に、WordPressのテーマが競合の原因となっている可能性があります。

確認するには、Twenty Twenty-ThreeやTwenty Twenty-FourのようなデフォルトのWordPressテーマに一時的に切り替えることができます。必要なのは、外観 » テーマに移動し、デフォルトテーマの「有効化」をクリックするだけです。

デフォルトのWordPressテーマを有効にする

デフォルトテーマで404エラーが消える場合、現在のテーマとの競合の可能性があります。テーマのトラブルシューティングを試すか、別のテーマの使用を検討してください。

おすすめとして、専門家が選んだ最も人気のあるWordPressテーマをご覧ください。

最近、ウェブサイトにコードスニペットを挿入した場合、コードのエラーが404エラーの原因となっている可能性があります。追加したコードをよく確認し、間違いがないか特定してください。

WordPressにコードスニペットを追加する最も安全な方法は、WPCodeプラグインを使用することです。このプラグインを使用すると、テーマファイルを直接操作することなくカスタムコードを挿入できるため、ウェブサイトが壊れるリスクを減らすことができます。

さらに、WPCodeはコードのエラーを検出すると、スニペットを自動的に無効にし、確認を求めます。また、ライブウェブサイトにプッシュする前にコードが機能するかどうかを確認するために、テストモードを使用することもできます。

WPCodeエラー警告

これらの解決策のいずれも機能しない場合は、次の方法に進み、パーマリンク設定のトラブルシューティングを行います。

WordPressの投稿が404エラーを返す原因は、.htaccessファイル内の書き換えルールに問題があるためです。ほとんどの場合、パーマリンク設定を更新することで問題を解決できます。

WordPress の管理画面で 設定 » パーマリンク設定 に移動し、「変更を保存」ボタンをクリックするだけです。

パーマリンクを確認する

パーマリンク設定自体を変更する必要はありません。これにより、パーマリンク設定が更新され、リライトルールがフラッシュされます。

ほとんどの場合、この解決策でWordPressの投稿404エラーが修正されます。ただし、うまくいかない場合は、手動で.htaccessファイルを更新する必要があるでしょう。

方法3:WordPressの.htaccessファイルを更新する

開始する前に、WordPressの.htaccessファイルをバックアップしてください。何か問題が発生した場合、元のファイルを簡単に復元できます。

次に、FileZillaのようなFTPクライアントを使用してサーバーに接続するか、ホスティングコントロールパネルのファイルマネージャーを使用する必要があります。

次に、サイトのルートフォルダにある .htaccess ファイルを見つけます。これは、/wp-content//wp-includes/ のようなフォルダが含まれているのと同じディレクトリです。

FTPクライアントでファイルを右クリックし、「ファイルの権限」または「権限の変更」を選択します。

.htaccess ファイルの権限

WordPressが以前にファイルに書き込めなかった場合は、一時的にファイル権限を666に変更して書き込み可能にしてみてください。

その後、WordPress管理画面に戻り、パーマリンク設定を再保存してください。これにより、WordPressは適切な.htaccessファイルを再生成できます。

これが完了したら、ファイル権限をより安全な設定である644に戻してください。この設定により、WordPressはファイルを読み取ることができますが、不正な変更から保護されます。

.htaccess ファイルのファイル属性を 644 に変更する

または、ファイルを直接編集することもできます。

.htacccessファイルを右クリックし、表示/編集オプションを選択するだけです。

.htaccessファイルを編集する

ファイルは、メモ帳やテキストエディットのようなプレーンテキストエディタで開かれます。

次に、以下のデフォルトの WordPress リライトルールを追加する必要があります。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

方法4:ホスティングプロバイダーに連絡する

上記のいずれの方法でもWordPressの投稿が404エラーを返す問題が解決しない場合は、WordPressホスティングプロバイダーに連絡することをお勧めします。彼らの側でエラーが発生しているか、問題のトラブルシューティングを手伝ってくれるかもしれません。

WordPressのサポートを適切に依頼し、サポートを受ける方法については、こちらのガイドも参照してください。WordPressのサポートを適切に依頼し、サポートを受ける方法

方法5:mod-rewrite を有効にする(ローカル WordPress インストール)

テスト目的でローカルサーバーを使用している場合は、MAMP、WAMP、またはXAMPPサイトのApache構成でmod_rewriteを有効にする必要があります。

これにより、WordPressはクリーンなURLを生成できるようになり、ローカルサーバー上の投稿やページの404エラーを防ぐことができます。

この操作方法は、使用しているプラットフォームによって異なります。XAMPPを使用しているユーザーは、コントロールパネルを開き、アクション内の「Config」ボタンをクリックできます。次に、「Apache (httpd.conf)」を選択します。

XAMPP の Apache (httpd.conf) メニュー

次に、この行 #LoadModule rewrite_module modules/mod_rewrite.so を見つけて、「#」を削除してコメントを解除する必要があります。

これにより、mod_rewriteがロードされます。

httpd.confファイルでrewrite_moduleを見つける

次に、AllowOverride None と書かれている行を探し、AllowOverride All に変更します。これにより、Apache は .htaccess ファイルの使用が許可されるようになります。

通常、これらは<Directory>ブロック内に見つかります。特に、XAMPPを使用している場合は、サイトのフォルダ(例:htdocs)を指すブロックです。不明な場合は、システムディレクトリでない限り、ファイル内のどこにでも変更を適用しても問題ありません。ローカルテストでは、これは通常問題なく機能します。

AllowOverride None を AllowOverride All に変更する

完了したら、httpd.confファイルを保存して閉じます。その後、XAMPPコントロールパネルでApacheモジュールの「停止」をクリックし、再度「開始」をクリックして再起動します。

次に、管理ダッシュボードに戻ってパーマリンクが機能しているか確認してください。

動画チュートリアル

視覚的な手順が必要な場合は、以下のビデオをご覧ください。

WPBeginnerを購読する

WordPress 404エラーに関するよくある質問

WordPressサイトで404エラーが発生すると、混乱することがあります。以下に、問題をより効果的にトラブルシューティングして修正するのに役立つ一般的な質問への回答をまとめました。

1. WordPress の投稿で 404 エラーが発生するのはなぜですか?

これは通常、WordPress が要求された URL で投稿を見つけられないことを意味します。パーマリンクの破損、.htaccess ファイルの破損、投稿の削除、または URL の処理方法を変更するプラグイン/テーマの競合が原因で発生する可能性があります。

2. WordPress で 404 エラーを修正するにはどうすればよいですか?

設定 » パーマリンク設定に移動し、「変更を保存」をクリックして、パーマリンク設定を再保存してみてください。それでもうまくいかない場合は、.htaccessファイルを確認し、プラグインを無効にし、または競合を排除するためにデフォルトのテーマに切り替えてください。

3. WordPressサイトのすべての404エラーを見つけるにはどうすればよいですか?

Google Search Consoleを使用して、Googlebotが検出した404エラーのリストを確認できます。Broken Link Checkerのようなプラグインは、サイト内の壊れたリンクや見つからないページを検出するのにも役立ちます。

4. WordPress における .htaccess ファイルの役割は何ですか?

.htaccessファイルはURLの処理方法を制御します。WordPressはこれを使用してパーマリンク構造を管理し、URLを正しいコンテンツにルーティングします。これが欠落しているか破損している場合、URLが正しく機能しなくなる可能性があります。

5. .htaccessファイルを安全に編集するにはどうすればよいですか?

FTPクライアントまたはホスティングのファイルマネージャーを使用して編集できます。常に最初にバックアップを取ってください。編集後、読み取り可能で安全な状態を維持するために、パーミッションが644に設定されていることを確認してください。

6. WordPressのカテゴリページやタグページで404エラーが表示されるのはなぜですか?

テーマがアーカイブテンプレートをサポートしていないか、パーマリンク設定が誤って構成されている場合に発生する可能性があります。パーマリンクを再保存し、テーマのアーカイブサポートを確認することで、問題を解決できます。

7. カスタム投稿タイプの 404 エラーを修正するにはどうすればよいですか?

設定 » パーマリンクにアクセスし、「変更を保存」をクリックしてリライトルールを更新してください。また、カスタム投稿タイプが正しいリライト設定で登録されており、必要に応じてアーカイブサポートがあることを確認してください。

8. 404ページをホームページや別のページにリダイレクトできますか?

はい、Redirection のようなプラグインを使用すると、古いまたは壊れたURLから新しいURLへの 301 リダイレクトを作成できます。カスタム 404 ページを作成して、ユーザーを役立つコンテンツに誘導することもできます。

🎁 ボーナス:404エラーの対処に関する追加ガイド

404エラーやその他の一般的なWordPressエラーの管理に、以下のリソースも役立つ場合があります。

この記事が、WordPressで404エラーが返される投稿を解決するのに役立ったことを願っています。また、最も一般的なWordPressのエラーとその解決方法に関するガイド、およびビジネスウェブサイトを成長させるための最高のWordPressプラグインに関する専門家のおすすめもご覧ください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

773 CommentsLeave a Reply

  1. 私の問題は少し異なります。wp-adminにはアクセスできますが、ダッシュボードや設定を含むWordPress内のどのページにもアクセスできず、404エラーページにリダイレクトされます。Cloudflareは無効にしましたが、問題は解決しません。

  2. WordPressのテーマを変更しただけで404エラーが解決しました。シンプルで素晴らしいアイデアをありがとうございます。

  3. この素晴らしい解決策をありがとうございます。私は会員制サイトを運営しており、今朝メールを確認したところ、多くのユーザーからページにアクセスできない、404エラーメッセージが表示されるという報告がありました。実際、その通りになっていました。何が原因か分からず、前夜に入れたプラグインか機能のせいかと思っていました…。

    Then i found this post, i saved again the permalinks as shown in this post and WORKED!!! :)

    but i am not happy yet, i want to know why happened this problem? so this wont repeat again :( because all night while i was sleeping this problem happened :(

    この問題が発生した理由を教えていただけますか?そうすれば、回避できます。

    ありがとうございます

    • 残念ながら、根本原因を特定するのは困難です。ホスト側のアップデートか、サイト側でパーマリンクが正しく更新されなかったかのいずれかの可能性があります。

      管理者

  4. htaccessとパーマリンク設定も確認しましたが、まだ機能しません。
    ページでは、一部のページしか表示されず、他のページはエラーが表示されます。
    「C:\xampp\htdocs\aaa\wp-admin\incldues\class-wp-posts-list-table.php の 1180 行目で、オブジェクトでないものからプロパティ 'post_author' を取得しようとしています」

    ページリンクが機能せず、ログイン後にホームページが自動的にwp-adminにリダイレクトされ、ダッシュボードには何も表示されません。
    この件についてお手伝いいただけますか?

  5. 同じ問題で post.php で 404 エラーが出ていました。イライラしましたが、私にとって唯一機能したのはテーマを変更することでした。そしてもう一度変更しました。これで機能しました。

    • 同じ問題を抱えていました。上記のオプションを試しましたが、うまくいきませんでした。別のテーマに変更してから通常のテーマに戻したところ、うまくいきました。

  6. どの解決策も私には効果がありませんでした。ホームページにしかアクセスできず、ページや投稿などの他のリンクは機能しません。これを引き起こしたアップデートは5.0.3でした。

  7. やったー!これは私には効きました。保存ボタンを押すだけでよかったです。記事にとても感謝しています。

    昨日、WP 5.0.2 に 4.9.8 からアップデートしました。それが原因の可能性がありますか?昨日までは問題なく動作していたようです。

    • どんなテクノロジーにも言えることですが、原因はたくさん考えられます。アップデート、ホストの一時的な問題、あるいはその他の未知の理由かもしれません。

      管理者

  8. WordPressの管理画面で作業中に突然404エラーメッセージが表示されました。どうすればよいですか?WordPressは初心者です。

    • この記事の手順に従ってください。それでも解決しない場合は、ホスティングプロバイダーに連絡すればサポートを受けられるはずです。

      管理者

  9. 本当にありがとうございます。うまくいきました。私のサイトは完全にオンラインに戻りました。ありがとうございます。

  10. 記事のすべての提案とコメントからのいくつかをお試ししました。
    その後、ホスティング会社に連絡したところ、サーバー上のModSecurityモジュールが「+src=」文字列を含むPOSTリクエストをブロックしていたことが判明しました。
    あなたにとっては異なるルールかもしれませんが、他のすべてがうまくいかない場合は、ホスティング会社にサーバーレベルでリクエストがブロックされていないか確認するように依頼してみてください。

  11. 本当にありがとうございます、あなたは素晴らしいです。とても愛しています、あなたは偉大です。たくさんのページを探しましたが、あなたのように知っていて教えてくれる人はいませんでした。あなたは最高です。
    ありがとうございます、ありがとうございます、ありがとうございます

  12. これは毎月のように私たちのサイトで発生しており、修正する唯一の方法は、WPダッシュボードでパーマリンクをリセットすることです。デバッグログファイルはクリーンなので、どこから修正を始めればよいか全く分かりません。同じような問題を抱えている人はいますか?

    • 同じ問題を抱えています!しかし、どこから問題が発生しているのか分かりません。誰か解決方法を知っていますか?

  13. 私の問題は次のページに関連しています。ホームページに表示される投稿数を10から5に減らしたところ、「次のページ」をクリックすると404ページが見つかりませんというエラーが表示されます。

  14. こんにちは!興味深い記事をありがとうございます!少し違う問題があります。404ページを別の正確で美しいページにリダイレクトしたいのです。通常はプラグインやテンプレートの機能を使います。しかし、私が普段使っているのと同じテンプレートがあるサイトの1つで、404ページが全く存在しません。何をしてもです。サーバー上に要求されたドキュメントが見つかりませんでしたというエラーが表示されます。

    • Aramさん、こんにちは。

      パーマリンク構造を更新してみてください。単に 設定 » パーマリンク にアクセスし、何も変更せずに変更を保存ボタンをクリックしてください。

      管理者

  15. この記事は本当に本当に役立ちます。

    しかし、私の問題は少し違うようです。WPBEGINNERさん、どうかどうか助けてください…

    上記の方法を試しましたが、うまくいきません。ただし、私の問題は少し異なります。

    私の問題は次のとおりです。
    時々、以前の投稿を更新したり、新しい投稿を作成しようとすると、「404エラー」にリダイレクトされます。どうか助けてください。

    • オケレケさん、こんにちは。

      これらの手順をお試しください。設定 > ライティングページに移動し、更新サービスセクションにあるボックス内のURLをすべて削除します(通常はrpc.pingomatic.comというURLが1つだけ表示されます)。次に、変更を保存ボタンをクリックして設定を保存します。

      投稿を編集して、問題が解決したかどうかを確認してください。それでも解決しない場合は、WordPressトラブルシューティングガイドの手順をお試しください。

      管理者

  16. この記事のおかげで、どれだけ時間を節約できたかわかりません…。取り返しのつかない間違いを犯したと思っていたので、すべてを捨ててブログを最初からやり直す準備ができていました。2回のクリックですべてが修正されました – ありがとうございます!すみません、ドクター・スースのように聞こえるつもりはありませんでした。良い一日を!

  17. こんにちは!この記事は役に立ちましたが、サイトをGoogle検索バーに入力すると、例:ac-universal.com/wp-admin でエラー404が見つかりました。WordPressにどうやって入ればいいですか?
    ガイドをお願いします。ありがとうございます。

  18. ありがとうと言いたかっただけです。数日間悩まされていた問題を、シンプルかつ効果的に解決してくれました!

  19. 問題は、投稿を更新しようとすると404ページにリダイレクトされることでした。

    指示通りに実行したところ、完璧に機能しました!

  20. ホームページにアクセスできません。
    URLにアクセスすると、常に「404 Not Found」と表示されます。

  21. 本当にありがとうございます。404エラーで気が狂いそうでしたが、パーマリンク設定の変更を保存したらうまくいきました!

    • 私も同じ問題です。ホームページとトップナビゲーションページの2つのうち1つにはアクセスできますが、2番目のページにはアクセスできず、/wp-loginまたは/wp-adminにもアクセスできません。

  22. 素晴らしいヒントです。何らかの理由で、httpd.conf ファイルの AllowOverride が 'None' に設定されていたため、これで問題が完全に解決しませんでした。

    もし他の人が同様の問題に遭遇した場合、以下のいずれかの場所にあるApache2 httpd.confファイルを編集するだけです:/etc/apache2/httpd.conf。 /etc/apache2/apache2.conf。

    検索:

    オプション Indexes FollowSymLinks
    AllowOverride None
    Require all granted

    そして、次のように置き換えます。

    オプション Indexes FollowSymLinks
    AllowOverride All
    Require all granted

    これが誰かの役に立つことを願っています!

    • トムさん、ありがとうございます。
      Google One Click Deployで新しいサイトをデプロイしましたが、docrootディレクトリのAllowOverride Allに関する指示をいくつか見落としていました。あなたの返信とこの記事のおかげで、再び機能するようになりました。AllowOverrideがNoneに設定されていると、.htaccessファイルは無視されるため、パーマリンクを機能させるためのディレクティブが失敗します。私の場合は、編集する必要があった設定は/etc/apache2/sites-available/wordpress.confで、WordPressのインストールディレクトリにAllowOverride Noneが設定されていました。

    • ありがとうございます、先生。あなたは今私のヒーローです。たくさんのサイトを見ましたが、一つもこのことを言及していませんでした。Apacheのマニュアルを読んだ範囲では、それほど明白なことでもありませんでした。

  23. 本当にありがとうございます。言うことは何もありません。本当に助かりました。素晴らしい仕事をしました。本当にありがとうございます。

  24. 見事にうまくいきました、ありがとうございます!
    Contact form 7 の Ajax が機能せず、コンソールログに 404 エラーのフィードバックが出ていました。
    これを読むまで、リライトルールのことを疑っていませんでした。
    パーマリンク設定を保存したら直りました!
    ありがとうございました

  25. 混乱しています。.htaccessファイルに0644と表示されており、660ではありません。どうすればよいですか。

  26. WPBチーム、ありがとう。魔法のように機能しました。だからこそ、この強力なサイトが大好きなんです!

返信を残す

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。