Redirect some external links to Japanese versions #709
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
MDN のリンク先が英語版になっている問題を JavaScript のソースコードベースで解消します。
Link
関数は MDX の[]()
構文の実装を置き換えるためのコンポーネントです。その部分に以下のようなコードを追加します。MDN の URL から
en-US
を取り除くことで、基本言語が日本語になっているブラウザからのアクセス、かつ日本語記事が既に存在する場合、自動的にそちらにリダイレクトされるようになります。問題点は 2 個あります。
また MDN の方は我々がやっているような見出し ID の固定をやっていないため、ページ言語が変わることで見出し ID も変わってしまいます。ただし記事内見出しへのリンクはそもそも数が少なく、かつ英語版の時点で既に大半が壊れているようなので、こちらの対処は行わないでいいかなと思います。
MDN 側でまだ和訳が記事の場合、自動的に英語版にフォールバックしてくれることが多いようなのですが、一部、以下のようなエラーページが表示されることもあります。条件は不明です。
ただしこのパターンになる数は非常に少ないようですし、英語記事へのリンクも表示されはしますし、将来は MDN 側で直してくれるかもしれませんので、とりあえずこのままで良いかなと思います。