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. あなたのヒントのおかげで、何時間も検索する手間が省けました – 本当にありがとう

  2. こんにちは、ウェブサイトを localhost からサーバーに移行してから問題が発生しています。メインページは正常に表示されますが、メニューが表示されず、リンクも常に 404 エラーが発生します。
    ローカルサーバーからの移行が原因でしょうか?手助けしていただけますか。

  3. こんな簡単なチュートリアル、いくら感謝しても足りません!! 他に見つけたものはどれもとても難しく思えました。最近HTTPからHTTPSに切り替えたのですが、問題が次々と発生しています..

  4. .htaccess ファイルがなかったので、提供された情報で作成し、アップロードしたところ、サイトは再び完全に機能しました。ありがとうございます!

  5. 上記のすべてを行いましたが、コピー&ペーストするテキストがすでにそこにあることに気づきました!まだ機能しておらず、ストレスが溜まっています!

    • I’ve done the same thing and nothing changed, the home page still not found :(

      解決策が見つかったらご連絡ください

  6. Wow. This really saved my bacon. Thank you so much for the tip on simply saving the permalinks page. Incredible advice! :)

  7. こんにちは!404エラーに対処するためにパーマリンクを何度もリセットしました。今回保存を押したときに、options-permalink.phpというファイルがダウンロードされ、サイトが壊れてしまいました。白い画面が表示され、毎回ファイルがダウンロードされました。最終的にデフォルトのパーマリンクで動作するようになりましたが、これは良い解決策ではありません。この状況に心当たりはありますか?テクニカルサポートは.htaccessファイルの問題ではないと考えていましたが、私は確信が持てません。サイトを別のホストに移行しました。何か助けていただけると幸いです。

  8. WP 管理画面にログインできない場合、設定を更新するにはどうすればよいですか? /wp-admin にアクセスすると 404 エラーが発生します

  9. こんにちは、助けてください。このチュートリアルで解決策が見つからないようです。ダッシュボードにアクセスできず、どのサイトディレクトリを開いてもこのメッセージが表示され続けます。

    見つかりません

    このサーバーでは、要求されたURL /index.phpが見つかりませんでした。

    さらに、リクエストを処理するために ErrorDocument を使用しようとした際に、404 Not Found エラーが発生しました。

  10. ありがとうございます。長年カスタマイズしていたパーマリンクページで保存をクリックしただけで、すぐに解決しました。

  11. こんにちは、404エラーの問題が発生していました。ホームページは正常に動作しますが、他のすべてのリンクで404エラーが発生します。WordPressの設定のパーマリンクで提案された方法を試して「変更を保存」をクリックしましたが、うまくいきませんでした。

    Webホスティング設定ページから.htaccessファイルを同期する方法について、以前投稿を見ましたが、やり方がよくわかりません。何かアドバイスはありますか?よろしくお願いします。

  12. Hi

    Fv Top Level Cats を使用していましたが、削除してもリダイレクトは機能しました

    example.com/category/tech へ

    example.com/tech.

    あなたの解決策を試しましたが、うまくいきません。

  13. このエラーがログインページに影響している場合は、.htaccessに移動して以下を削除してください。

    “すべて拒否”
    “00.00.00.00 から許可”

  14. 素晴らしい – サイトを別のサーバーに移動したところ、404 エラーについて心配し始めました。この修正は完璧に機能しました – とても簡単でした!

  15. 頭を悩ませる問題に対する非常に簡単な回答です。本当にありがとうございます。ちなみに、この問題はBJ Lazy Loadingをインストールした後に始まりました。

  16. こんにちは。私のサイトの1つがハッキングされました。数百の記事が挿入されていました。それらは現在削除されています。Googleウェブマスターツールでは、それらは404として表示されています。

    これが私のサイトにどのように影響するか、どうすれば修正できますか?
    ありがとうございます

  17. この記事を投稿していただきありがとうございます。数ヶ月かけてストア/ブログを構築していましたが、今日、ホームページ以外のどのページや投稿も機能せず、他のすべてのリンクが404エラーページにリダイレクトされていました。完全に最初からやり直そうとしていました – 数ヶ月の作業をやり直すところでした。この記事が私のサイトを救ってくれました。今ではすべて元通りに機能しています。いくら感謝しても足りません。

    • こんにちは、完全に詰まっています。全くコンピューターに詳しくないので、すべてが私には理解不能です。ホームページは良いのですが、ブログ記事、サービスなどの他の 5 つのページを作成しました。作成したページを表示しようとするたびに、「見つかりません。要求された URL /services/ はこのサーバー上にありません。」と表示されます。変更を保存してみましたが、何も変わりませんでした。FTP が何なのか全く分かりません。何か助けてもらえませんか?ありがとう。

      • Robinさん、こんにちは

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

        管理者

  18. 皆さん、こんにちは。

    yoastseo プラグインをインストールしました。XMLサイトマップは正常に生成されましたが、Google Search Consoleでテストすると404エラーが表示されます。

    記事に記載されている方法を試しましたが、問題は解決しませんでした。
    また、CCpanelには同じ名前のファイルが2つあり、htaaccessとhtaaccess.1(記事で言及されているのと同じコードが書かれています)があるのですが、これは正常ですか?
    この問題について助けていただけますか?

  19. 「変更を保存」をクリックするだけでうまくいったなんて信じられません。ありがとうございます!

  20. こんにちは、助けていただけると大変ありがたいです。パーマリンクの変更を保存する手順に従いましたが、コンピューターのことはよくわからないので、その後のことはどうすればいいかわかりません。この画面が表示されています。

    Fatal error: Class ‘Epsilon_Editor_Custom_Control’ not found

  21. 素晴らしい方です。本当にありがとうございます。サイトを開いたのですが、502エラー、次に503エラー、そして最後に500エラーが発生しました。その後、あなたの投稿のおかげでcPanelの500エラーの問題を解決しました。
    しかし、投稿ページを開くと404エラーが表示されたので、Googleで検索してあなたの投稿を見つけました…ありがとうございます…

  22. 新しいサーバーの場合、またはApacheのアップグレードの場合、以下を確認する必要がある場合があります:

    httpd.conf を開きます。例: /etc/httpd/conf/httpd.conf。
    AllowOverride None を AllowOverride All に変更します。
    変更を保存します。
    Apache サーバーを再起動します。

  23. 少し困っています…パーマリンクページで変更を保存をクリックした後、別の404エラーが表示されました。

  24. まだ問題があります。どうすればよいかわかりません。上記のステップに従いましたが、結果は同じです。私のウェブホスティング会社は Windows 2012 サーバーを使用しているため、.htaccess ファイルはありません。これらのヘルプ投稿の多くは .htaccess を参照していますが、Windows はそれを使用しません。彼らは web.config ファイルを使用していると思います。それは正しいですか?助けてください

  25. 上記の手順に従いましたが、まだうまくいきません。Windows 2012 R12サーバーを使用しており、FTPで隠しファイルを強制表示しても.htaccessファイルがありません。Windowsサーバーでこの問題を修正する方法についての指示はありますか?

    • Marcoさん、こんにちは。

      まず、既存の web.config ファイルのバックアップをコンピューターにダウンロードする必要があります。その後、サーバー上のファイルを編集し、system.webServer 要素に次のルールを追加します。

      <?xml version="1.0" encoding="UTF-8"?>
      <configuration>
      <system.webServer>
      <rewrite>
      <rules>
      <rule name="WordPress Rule" stopProcessing="true">
      <match url=".*" />
      <conditions>
      <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
      <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
      </conditions>
      <action type="Rewrite" url="index.php" />
      </rule>
      </rules>
      </rewrite>
      </system.webServer>
      </configuration>
      

      管理者

      • WPBeginnerサポート様。現在2日間続いているWordPressの404エラー問題を解決するために、このブログに掲載されているすべての解決策を試しましたが、うまくいきませんでした。WordPressでWindowsプラットフォームを使用してウェブサイトを開発しています。この問題を解決するために、他にどのようなことをすればよいでしょうか?
        ご回答をお待ちしております。

  26. 素晴らしい助けになりました、ありがとうございます!保存をクリックするのと同じくらい簡単でした!

  27. サイトを移行し、mySQLデータベースをインポートし、WordPressディレクトリのファイル構造全体をアップロードしました。

    ホームページ以外のすべてで404エラーが発生し続けており、パーマリンクセクションの設定を再保存しても機能しませんでした。

    私の場合、FTPサイトのhtaccessファイルをhtaccessOLDにリネームして参照されないようにしました。必要であればバックアップも取ってあります。その後、パーマリンクオプションを保存しました。リンクの種類(日付、ページ番号、説明など)を選択する必要がありました。すべて保存した後、すべてのページが元通りに機能するようになりました。

    投稿ありがとうございます。これで、これを見つけて修正するための手がかりを得られました。

  28. 正確な手順に従いましたが、残念ながら私にはうまくいきませんでした。パーマリンク情報を保存し、.htaccess を削除して再生成しても、404 エラーが繰り返し表示されます。ホームページは表示できますが、サブページにアクセスしようとすると 404 エラーが表示されます。WP のデフォルトテーマに切り替えてみましたが、それも役に立ちませんでした。404 エラーの場合の「高度な」バグ解決策はありますか?

  29. こんにちは。404エラーで少し問題があります。単一の投稿のパーマリンクを変更しました。現在、特定のキーワードに対して、Googleは同じ投稿を同じタイトルで2つの異なる位置に表示しており、URLが異なり、1つは404エラーになっています。助けてください。

      • 不要です、問題は解決しました。偶然にも、私のホストがWPが生成するものとは異なる.htaccessファイルを読み込んでいることがわかりました。そのため、ホスティングポータル経由で「同期」する必要がありました。これでうまくいきました。どうもありがとうございました。同様のセットアップをしている他の人にとって、この代替ソリューションが役立つかもしれません。よろしくお願いいたします!

        • 私もです!ウェブホスティングの設定ページでhtaccessファイルを「同期」する必要がありました…ヒントをありがとうございます!

  30. 今日は命を救っていただきました。投稿を作成した後、投稿を読むことができず、泣きそうになっていました。404エラーが返ってきました。いくつかのウェブサイトで答えを探しましたが、あなたの投稿は非常に明確で、パーマリンク構造を変更したところ、うまくいきました。ありがとうございます、ありがとうございます。

    • 解決策:FTPでサーバーにログインし、/wp-content/ や /wp-includes/ などのフォルダがある場所を修正します。最も簡単な方法は、一時的にファイルのパーミッションを777に変更して書き込み可能にすることです。その後、元の解決策を繰り返します。
      設定 » パーマリンクに移動し、変更を保存ボタンをクリックするだけです。
      パーミッションを755(/wp-content/ および /wp-includes/)に戻すのを忘れないでください。
      私がやったところ、今は完璧です!

返信する

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