あなたのサイトの訪問者は、存在しないページにアクセスしようとすると、404 ‘not found’ エラーが表示されます。このようなユーザーは、興味のあるコンテンツがすぐに見つからない限り、70%以上がサイトを離れてしまうでしょう。
幸いなことに、404ページをホームページにリダイレクトすることで、この問題を解決することができます。この簡単なトリックは大きな違いをもたらします。サイトからの離脱を防ぎ、彼らが気に入るものを見つけるチャンスを与えることができます。
この投稿では、WordPressで404ページをトップページにリダイレクトする方法をご紹介します。
なぜ404ページをWordPressのホームページにリダイレクトするのか?
ユーザーがWordPressサイトに存在しないページを訪問しようとすると、WordPressは代わりに404エラーページを表示します。
このページの文言や外観は、使用しているテーマによって異なります。
初期設定の404ページにランディングしたユーザーのほとんどは、すぐにサイトを離れてしまいます。これは、サイト全体の直帰率を高め、検索エンジンのランキングに悪影響を及ぼします。
そのため、時間をかけてカスタム404ページを作成する必要がある。しかし、そうするまでは、このチュートリアルのショートカットを使ってユーザーをホームページにリダイレクトすることができます。
完璧な世界では、特定の404エラーリクエストを最も関連性の高いページにリダイレクトすることもできます。
それでは、すべての404エラーをホームページにリダイレクトする方法を見ていきましょう。ここでは、2つの方法と、個別のページにカスタマイザーリダイレクトを作成する方法を紹介します:
404エラーやリダイレクトを自分で管理したくないですか?WPBeginnerプロサービスの専門家にお任せください!404エラーやリダイレクトの問題を素早く解決するために、WordPressの緊急サポートを低価格で提供しています。サイトの問題にストレスを感じるのはもうやめましょう。WordPressサポートサービスを今すぐご予約ください!
方法1:WordPressですべての404エラーをホームページにリダイレクトする
この方法では、All In One SEO for WordPress(AIOSEO)を使用する。このプラグインは、リダイレクトの設定や検索エンジン向けのコンテンツの最適化などを可能にする、WordPressのSEOプラグインとして最適です。
最初に行う必要があるのは、All In One SEO (AIOSEO)をインストールして有効化することです。詳しくは、WordPressプラグインのインストール方法のステップバイステップガイドをご覧ください。
注:All In One SEOには無料版もありますが、RedirectはProアドオンなので、今回はPro版を使用します。
プラグインを有効化したら、All In One SEO ” Redirectsに移動する必要があります。
まだリダイレクトを設定していない場合は、「リダイレクトを有効化する」ボタンをクリックしてください。
All In One SEOのRedirectsモジュールがインストールされます。
次に、ページ上部の「設定」タブをクリックします。このページでAIOSEOのリダイレクトを設定することができます。
高度な404設定」セクションを見つけるまでページをスクロールする必要があります。トグルボタンが青くなるようにクリックして、このセクションを有効化してください。
これで、さらにいくつかの設定が表示されます。Enable default 404 redirect’ボタンをオンに切り替えてください。その後、’ホームページ’オプションが選択されていることを確認してください。
カスタムURL’オプションもあることに注目してください。これにより、404エラーを任意の投稿やページにリダイレクトすることができます。ページの上部または下部にある「変更を保存」ボタンをクリックして、設定を保存することをお忘れなく。
これで、訪問者があなたのサイトに存在しないURLにアクセスしようとすると、初期設定の404ページが表示されるのではなく、ホームページが表示されるようになります。
方法2:コードを使用してすべての404エラーをホームページにリダイレクトする
この方法では、WordPressにカスタムコードを安全かつ簡単に追加できるWPCodeを使用する。さらに、404ページを自動的にホームページにリダイレクトするコードを含む、便利なコード・スニペットの膨大なライブラリーが付属している。
開始するには、無料のWPCodeプラグインをインストールし、有効化する必要があります。ヘルプが必要な場合は、WordPressプラグインのインストール方法のチュートリアルに従ってください。
プラグインを有効化したら、WordPressダッシュボードからCode Snippets ” + Add Snippetに移動します。
そこからライブラリで「Redirect 404 to Homepage」スニペットを探し、マウスオーバーして「Use snippet」ボタンをクリックする。
WPCodeは自動的にコードを追加し、適切な挿入方法も選択します。
あとは、スイッチを「非活性化」から「有効化」に切り替え、「更新」ボタンをクリックするだけだ。
ページが見つからない場合、404ページが表示されるのではなく、WordPressのホームページにリダイレクトされます。
プラグインを使用したくない場合は、シンプルなコードスニペットを使用して、すべての404ページをホームページにリダイレクトすることができます。
この方法では、WordPressファイルにコードを追加する必要があります。WordPressにスニペットを貼り付ける方法については、初心者向けガイドをご覧ください。また、WordPressテーマのテンプレート階層についてのガイドもご覧ください。
まず、WordPressテーマ・フォルダーに新規ファイルを作成し、404.phpという
名前を付けます。すでにテーマに404.php
ファイルがある場合は、そのファイルを編集してください。
このファイルを編集するには、FTPクライアントまたはファイルマネージャーツールでWordPressホスティングアカウントに接続する必要があります。
サイトに接続すると、WordPressのテーマフォルダにある404.php
ファイルが表示されます。
404.php
ファイルの最初の行に以下のコードを追加する必要があります:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".get_bloginfo('url'));
exit();
?>
次に、404.php
ファイルを保存し、FTPまたはホスティングサービスコントロールパネルを使用してテーマディレクトリに再アップロードします。すると、404エラーはあなたのホームページにリダイレクトされます。
ボーナス:AIOSEOでカスタム404ページリダイレクトを設定する
404エラーに対処する最もSEOに適した方法は、訪問者をホームページだけでなく、最も関連性の高いページにリダイレクトすることです。
All In One SEOプラグインのRedirects機能は、すべての404ページエラーを追跡し、WordPressでスマートな404ページリダイレクトを設定することもできます。
方法1に従ったときにAIOSEOをインストールして有効化したのであれば、All In One SEO ” リダイレクトのページに戻り、「設定」タブをクリックするだけです。
次に、「ログ」セクションが表示されるまで下にスクロールします。404ログは、訪問者があなたのサイトに存在しないページを訪問するために使用しようとしたURLの記録です。
404ログ’が青く見えるようにトグルがオンになっていることを確認してください。プラグインがログを記録する期間をドロップダウンメニューから選択することもできます。
次に進む前に「変更を保存」をクリックするのをお忘れなく。
その後、「404ログ」メニューオプションをクリックして、最後にアクセスされた404ページを見ることができます。
ログ記録を有効化したばかりなので、すぐには何も表示されないかもしれないことを忘れないでください。有益な洞察が表示されるまで、最大24時間待つ必要があるかもしれない。
URL」カラムには、ユーザーが訪問しようとしたが存在しなかったページが表示されます。
リダイレクト」列の「リダイレクトを追加」リンクをクリックすると、これらの URL を既存のページにリダイレクトできます。リダイレクト情報を入力するドロップダウンが開きます。
最良の結果を得るには、元のクエリーに対して最も関連性の高いページを「ターゲットURL」ボックスに入力し、「リダイレクトを追加」をクリックする必要があります。
例えば、WordPressブログの始め方に関するチュートリアルを削除し、新しいチュートリアルを書いた場合、古いURLをホームページではなく新しいブログ投稿にリダイレクトするのがベストです。
複数の404ページリダイレクトを追加するには、上記と同じ手順を踏むだけです。
一般的に、404ページを永久にホームページにリダイレクトしたくないことを覚えておいてください。よりコンバージョンの高いカスタマイザー404ページを作成するか、ユーザーを関連ページに誘導するリダイレクトを個別に設定するまでの一時的な解決策としては最適です。
WordPressの404エラーに関するエキスパートガイド
WordPressで404ページをホームページにリダイレクトする方法はおわかりいただけたと思いますが、404エラーの処理方法に関する他のガイドもご覧ください。
- WordPressで301リダイレクトを作成する初心者ガイド
- WordPressの投稿が404エラーを返すのを修正する方法(ステップバイステップ)
- WordPressで404ページをトラッキングしてリダイレクトする方法
- WordPressでリンク切れを見つけ、修正する方法(ステップバイステップ)
- WordPressで404ページのテンプレートを改善する方法
- WordPress 404エラーページのデザイン例
- 最高のWordPressリダイレクトプラグイン(比較)
- WordPressのための無料のベスト404リダイレクトプラグイン
- 定期的に行うべきWordPressの重要なメンテナンスタスク
- 最も一般的なWordPressエラーとその修正方法
WordPressで404ページをリダイレクトする方法について、この投稿がお役に立てば幸いです。究極の WordPress SEO ガイドや、カスタマイザーで 404 ページを作成するのに最適な WordPress ページビルダーもご覧ください。
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Ralph
I have 2 or 3 blog posts that had to be deleted, but the urls are still present on Pinterest, forums, etc., so I redirected 404 to my homepage in hosting settings to not lose traffic. However, for any other non deleted 404 I have my own “sorry” info and search bar.
I really appreciate good 404s on people’s websites, as this often indicates that they really care. Redirecting to the homepage has its uses, but not every time I think.
WPBeginner Support
That is an option if you prefer it
管理者
Jiří Vaněk
I think, but it’s just my personal opinion, that redirecting people to the homepage isn’t good. Instead, it’s better to create a humorous 404 with an apology that reduces visitor frustration and offers interesting content in the form of a 404 page where the latest content of the website or blog can be automatically inserted. This way, the visitor realizes the page no longer exists but also gets the opportunity to laugh at a well-crafted 404 page and receives alternative content as an option for what to do next.
WPBeginner Support
That is another option, it depends on the site and what type of content but both are valid options
管理者
Shamsher Khan
Thanks for sharing this amazing tutorial.
WPBeginner Support
You’re welcome!
管理者
Mbah Chinedu
Hello, the 301 redirect you do at php file in ftp, can’t I use a text to inform user that the page is going to redirect in some seconds and then allow it redirect. At least bounce rate still reduces, because google has no issue with soft 404 or 404 pages
WPBeginner Support
You can create a page like that if you wanted but we do not have a beginner-friendly method for creating that with PHP.
管理者
Mark Cavallo
very quick and easy trick – saved me a heap of time manualy redirecting with new website. thank you.
WPBeginner Support
Glad our guide could help
管理者
Dave
Please what if I don’t want it to go to the homepage, how do I set it to another custom page please?
WPBeginner Support
We would recommend taking a look at our guide on tracking and redirecting 404s for other links below:
https://www.wpbeginner.com/plugins/how-to-track-404-pages-and-redirect-them-in-wordpress/
管理者
Mudassir
Hello WPbeginner team,
I am using Astra Pro and have already some code in my 404.php. Now my question is, where do I add the above code exactly? Should I remove all that existing code and add yours or how?
Please help!
WPBeginner Support
For this tutorial, you would replace the code in your 404 page with this code normally. As we state in the article, this should only be done in very specific cases
管理者
Mudassir
Thank you, I replaced it and it works!
WPBeginner Support
Glad it worked
Adeola
Your posts are always very helpful. Thank you
Peter
Is this going still to be shown as a 404 in the Google Search Console ?!
WPBeginner Support
Hi Peter,
No, it will send 301 header message to crawlers telling them that the content has moved permanently.
管理者
Noble A. Ozogbuda
Hello please how can i modify this code to redirect all my 404s pages to a specific page, not homepage?
Mentik
Work Perfect … thanks
Jack
It worked perfectly ! Thanks Syed
Mohan
I have just installed it and did some redirection. I hope it works the way I expect. Anyway, its a nice plugin. Thanks for the helpful post about it.
Jeffrey Asamoah
worked thanks!
Jitendra Mahato
hi… i want to know that how to redirect the 404 page to a custom page.I want to do that in my blog. Thank you. Hoping your answer. I used this code and doing well.
Drake Bliss
If you only want to redirect a specific url path, try this code below. First create a child theme if you do not have one and move 404.php to the the child theme.
Edit the 404.php page in the child theme and paste this code into the very top of the 404.php page. You can insert more check for other paths you want to redirect,.
yudi cahyadi
hi there…i’m using chid theme but it doesn’t exist 404 file,, how to creat 404.php file using child theme not in main theme to insert code ..
thank you..
umer tanveer
Insert code to Main Theme
eray
thank u so much. it works ..
Kaizur Ahmed
Great! This code work fine.
Liem Hoang
Work perfectly! Thank admin so much, you have been saved my life. My website will no longer get error win WMT.
Malindo My Id
wow thankyou so much,, did you know thats my site have been redirect from spammer, makes my eror page 404 found until 1240 not found url. and now I was redirect to my home age.. you are good boys.. thankyou.. I like this page,, so useful for many blogger ..
Malindo My Id from Indonesia
Shoaib
i read anywhere on web that 404s should not be redirected globally to the home page.
whats your view ???
WPBeginner Support
We agree that it is not the best practice. However, sometimes it may become necessary for some websites to do that.
管理者
Sanjar
Thanks alot
Sid
Is there any way that I can redirect specific 404 pages. Like I created a custom post type and I just want to redirect 404 pages on that post type. Will that be possible?
WPBeginner Support
Yes, it is possible. See plugins in our list of 6 best free 404 redirect plugins for WordPress.
管理者
Jaswinder
Good and valuable information, this is what I was looking for.
Thanks.
Kumar
This code is causing problem, when i post something new permalink gets shorten and does not contain complete post title.
What shld i do?
Miguel Guzman
I have 1,500 404’s that is because i started using dates on the url at the beginning when i started using WordPress. I changed the permalinks and that’s when the 404 started. is really hard when you have so many redirect to map them individually. its easier to re direct then all to home page.
Riccardo
How can you redirect depending on the language the site is displaying?
My website is in french and english, but when I use your code it goes only to one page for both languages.
Thank you for your help!
Riccardo
slango20
this is bad practice, very bad. If you have time to set up a wordpress site, you have time to put 404 Not Found into a 404.php at *least* instead of redirecting to the homepage with no explanation whatsoever
jhelum
fantastic… thanks a lot
dcaryll
Appreciate the quick explanation and answer. Thanks for the post.
Roy
I am very grateful for this. You saved me doing 200+ redirects. Worked a treat.
P.D.
Does anyone know if the code works as well for multisite installations?
If so, does the 404 page bounce to the subdomain / subfolder / subsite or the main or root domain / folder / site?
Vishal
Thanks dude….
Prasanna
I really thank full to you. My website here after won’t get crawl errors.
Thanks a lot.
slango20
those crawl “errors” are perfectly normal and don’t affect your site’s ranking, just like it’s not a good idea to reply to all sms with the same response just because you received a few spam sms
marco
Thanks that help a lot.
Dilpreet Bhatia Music
Wow – That Was easy!!
Filip Hajek
There is a cool WP plugin “404 Redirected”, whoch captures 404s for you and let’s you redirect them easily.
Eric
Thanks for the comment! That helped me out a lot! The article’s has a good solution too but I don’t like messing with my code. Thanks again for the suggestion Flip!
-Eric Out-
Nikole
What if I want t redirect to a specific page not the homepage?
Editorial Staff
You can change line 3. Or better use the redirection plugin like we mentioned in the article.
管理者
Rakesh
It rocks!!! I used the code ( previously my theme given me a custom 404 page template, but I replaced with your few lines). Thank you.
ud
Thanks for your very useful information
Arslanh
I did this but it doesn’t seem to work. I have no knowledge of coding so please help me!
Editorial Staff
It should work just fine if you follow the article how it is. This is not a very complicated piece of code.
管理者
Julien
I am really not convinced by the relevance of this. 404 means the page doesn’t exist anymore, 301 is a permanent redirect. Those 2 errors do not mean the same for search engines.
Rootpak
I agree. I would not recommend redirecting all 404 pages to the home page. From SEO point of view it is not accepyable. It means that every not existing page was moved to home page. It can simply lead to problems how google sees your site.
Andy Feliciotti
I use smart 404 extension and I must say it’s amazing, it’ll find a post with a similar URL and redirect to it
Editorial Staff
What is this extension called?
管理者
Clark Wimberly
I should know better, but one time I created an infinite loop using something close to this. It was a site with few pages for mostly logged-in users, so I made my 404 template redirect to the user page. What I had forgotten is that I made my user page redirect to the 404 if you weren’t signed in. Totally my fault, and barely relevant, but there you go.
Editorial Staff
Hah that’s funny. The only reason why we wrote this code was for a small one-page site which where we didn’t want users to peek around too much. Some folks are just curious and they start running search or checking out feeds etc. So we disabled search, feeds, and redirected 404 to the homepage.
管理者