Markdownでリンクカードを表示する「remark-link-card」の使い方
ブログなどでは、リンクを埋め込む際にリンクカードを表示することがあります。リンクカードは、リンク先のページのタイトルやサムネイル、概要などを一覧表示でき、リンク先の情報を簡単に把握できるため、ユーザーにとって便利な機能です。
この記事では、Markdownでリンクカードを表示するための 「remark-link-card」の使い方について解説します。
remark-link-cardとは?

remark-link-cardは、OGPのリンクカードを表示するための、Markdownパーサーのremark用のプラグインです。
remark-link-cardを使うと、Markdownファイル内のベアリンクを自動でリンクカードに変換できます。リンクカードにはサムネイルやタイトル、概要、favicon、リンク先のURLが表示されます。
remark-link-cardの使い方
remak-link-cardを使うには、まずプロジェクトにインストールします。
npm install remark-link-card
インストールが完了したら、remarkにremark-link-cardを追加します。
import remark from "remark";import rlc from "remark-link-card";
(async () => { const result = await remark() .use(rlc) .process(exampleMarkdown)
console.log(result.contents);})();
Astroを使っている場合は、astro.config.mjs
にremark-link-cardを追加します。
import { defineConfig } from "astro/config";import rlc from "remark-link-card";
// https://astro.build/configexport default defineConfig({ // ... markdown: { remarkPlugins: [rlc] }});
オプション
remark-link-cardには、次のオプションがあります。
cache
:true
に設定すると、faviconやサムネイルなどのデータを./public/remark-link-card/
にキャッシュします。デフォルトはfalse
ですshortenUrl
:true
に設定すると、リンクカードに表示するURLをホスト名のみにします。デフォルトはfalse
で、完全なURLを表示します
オプションを利用する場合は、次のように設定します。
import remark from "remark";import rlc from "remark-link-card";
(async () => { const result = await remark() .use(rlc, { cache: true, shortenUrl: true }) .process(exampleMarkdown)
console.log(result.contents);})();
import { defineConfig } from "astro/config";import rlc from "remark-link-card";
// https://astro.build/configexport default defineConfig({ // ... markdown: { remarkPlugins: [ [ rlc, { cache: true, shortenUrl: true } ] ] }});
リンクカードを表示する方法
リンクカードを表示するには、Markdownファイル内にベアリンク(むき出しのURL)を記述します。ベアリンクではないリンクは、カードに変換されません。また、1行に複数のリンクがある場合も変換されません。
次のコードは、リンクカードが表示される例です。
## リンクカードが表示される
https://example.com
<https://example.com>
次のコードは、リンクカードが表示されない例です。
## リンクカードが表示されない
[リンクカードが表示されない](https://example.com)
https://example.com https://example.com
Markdownではリンクを< >
で囲っても囲わなくても動作します。MDXではエラーが出るため、リンクを< >
で囲わないことをオススメします。
まとめ
この記事では、Markdownでリンクカードを表示するための「remark-link-card」の使い方について解説しました。
リンクカードを手軽に実装できるので、ぜひ使ってみてください。