外部リンクを新しいタブで開く
外部リンクを新しいタブで開く
Section titled “外部リンクを新しいタブで開く”Astroではリンクをクリックしたときに同じタブで開く設定になっているが、rehype-external-links
拡張機能を使うことで、新しいタブで開くように設定できる。
リンクの仕組み
Section titled “リンクの仕組み”HTMLでリンクを設定する際に、<a>
コンポーネントのtarget
属性の値によって、リンクを開く方法を指定できる。
<a href="https://example.com" target="_self">リンクテキスト</a>
<a href="https://example.com" target="_blank">リンクテキスト</a>
Markdownでは、通常のリンクの書き方である
[リンクテキスト](https://example.com)
において、target
属性を指定できないが、rehype-external-links
拡張機能を使ってtarget
属性の制御を行う。
拡張機能の使い方
Section titled “拡張機能の使い方”- 拡張機能をインストールする
Terminal window npm install rehype-external-links astro.config.mjs
に設定を追加するastro.config.mjs import rehypeExternalLinks from 'rehype-external-links';export default {markdown: {rehypePlugins: [[rehypeExternalLinks,{target: '_blank',rel: ['noopener', 'noreferrer'],content: { type: 'text', value: ' 🔗' }, // お好みで}]]}};
- 今まで通りリンクをMarkdownで書く
[リンクテキスト](https://example.com)
以上で、外部リンクを新しいタブで開けるようになった。