福岡・久留米のホームページ制作|猫壱屋

Google search console のエラー修復について

2026-01-27

多言語化を.htaccessで仮想フォルダに飛ばしていたんだけど

sitemap.xmlを各言語に併せてGoogleに登録していたんだがエラーを出すようになってしまった

しばらく様子を見ていたんだけど検索に上がらなくなったようなので対応策をとった

.htaccessからWordPressのfunction.phpに変更して書いたのが次の項目

// 言語コード用の仮想URLを追加

function add_lang_rewrite_rules() {

    add_rewrite_rule(

        '^(ja|en|ko|cn|tw)/?$',

        'index.php?lang=$matches[1]',

        'top'

    );

    add_rewrite_rule(

        '^(ja|en|ko|cn|tw)/(.*)/?$',

        'index.php?lang=$matches[1]&pagename=$matches[2]',

        'top'

    );

}

add_action('init', 'add_lang_rewrite_rules');

// クエリ変数に lang を追加

function add_lang_query_var($vars) {

    $vars[] = 'lang';

    return $vars;

}

add_filter('query_vars', 'add_lang_query_var');

function get_current_lang() {

    $lang = get_query_var('lang');

    if (!$lang) {

        return 'ja'; // デフォルト言語

    }

    return $lang;

}

add_action('template_redirect', function() {

    if (is_admin()) return;

    $request_uri = trim(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH), '/');

    // sitemap.xml, robots.txt, CSS/JS/画像などは除外

    if (preg_match('/.(xml|txt|css|js|png|jpg|jpeg|gif)$/i', $request_uri)) {

        return;

    }

    // トップページ / のみ /ja/ にリダイレクト

    if ($request_uri === '' || $request_uri === 'index.php') {

        wp_redirect(home_url('/ja/'), 301);

        exit;

    }

});

またしばらく様子見状態

サイトマップは下のサイトを利用させていただいてます

サイトマップを作成-自動生成ツール「sitemap.xml Editor」

一覧に戻る