WordPress のブログで存在しないページへアクセスされた際に、404ページを表示するのではなく、指定されたページへリダイレクトさせる方法を紹介させていただきます。
テーマに404.php がない場合はfunctions.php を編集
ご利用のテーマのfunctions.php に以下のコードを追加します。
1 2 3 4 5 6 7 |
function is_404_to_homeurl(){ if( is_404() ){ wp_redirect( home_url(), 301 ); exit(); } } add_action('template_redirect', 'is_404_to_homeurl'); |
上記例では、is_404(ページが存在しない)とき、home_url()(トップページ)へ301リダイレクトするようになっています。
参考ページ
wp_redirect() | Function | WordPress Developer Resources
404.php がある場合
ご利用のテーマに404.php がある場合は、こちらのファイルを編集してPHPで301リダイレクトさせる方法もあります。<?php header( "HTTP/1.1 301 Moved Permanently" ); header( "location: " . home_url() ); exit; ?>
コメント