WordPressページで404 not foundの場合にトップページにリダイレクトを行う

概要説明

パーマリンクを変更したリニューアルの際に構造を変えたりすると検索エンジンからのアクセスで404になるので、404の場合はトップページや任意のページにリダイレクトさせるカスタマイズ。

エラーページの場合にリダイレクト

functions.php
/*----------------------------------------------------
 404 not foundの場合はリダイレクト
----------------------------------------------------*/
if ( !function_exists( 'is404_redirect' ) ){
    function is404_redirect() {
        if( is_404() ){

            $url = '';
            if ( isset($_SERVER['REQUEST_URI']) ) {
                $url = $_SERVER['REQUEST_URI'];
            }

            // URLに特定の文字列が含む場合
            if( strstr($url, '任意の文字列') ){
                //wp_redirect('https://任意のページにリダイレクト', 301); // 301 リダイレクト
                wp_redirect('https://任意のページにリダイレクト');        // 302 リダイレクト

            } else {
                // topページ
                //wp_safe_redirect( home_url( '/' ), 301 );               // 301 リダイレクト
                wp_safe_redirect( home_url( '/' ) );                      // 302 リダイレクト

            }
            exit();
        }
    }
    add_action( 'template_redirect', 'is404_redirect' );
}

URLにて判定してそれ以外はトップページへリダイレクトという処理にしています。url判定が必要ない場合は一律トップページリダイレクトでご利用ください

WordPress Developer Resources

関連機能

  1. Notice: Undefined index: post_typeの対応

  2. Warning: file_get_contents(): SSL operation failed with codeの対応

  3. WordPressプラグインが英語表示になってしまった時に日本語にする方法 ( 日本語対応済みのプラグインの場合 )

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

いかに鞘から抜かずにおくか
そのために我々は死にものぐるいで
剣を振っとるのだ

バガボンド
by 柳生石舟斎

Profile

PAGE TOP
Amazon プライム対象