logo
n min

✍️

MDX サンプル.

投稿日

更新日

概要

本サイトで使用可能な MDX のサンプルです。逐次追加していきます。

以下に、MDX 記法を示します。

見出し

見出し 2

見出し 3

見出し 4

見出し 5
見出し 6

見出し1 は使用しません。

SEO ・ ユーザビリティの観点から、見出しは h2 から始めてください。 また、見出し5 以上は出来るだけ使用しないでください。

スタイリング

太字

イタリック

太字イタリック

取り消し線

インラインコード

リスト

箇条書き

  • アイテム 1

    • アイテム 1-1
    • アイテム 1-2
  • アイテム 2

    アイテム内のテキスト

リンク

内部リンク

外部リンク

リンクカード

リンクカードは、リンク先の情報を表示するためのコンポーネントです。簡潔な URL を記述することで、自動的にリンクカードが生成されます。

画像

Dev placeholder Image

テーブル

Header 1Header 2Header 3
1-11-21-3
2-12-22-3

コードブロック

基本

バッククォート3つで囲むことでコードブロックを記述できます。

対応言語を指定することで、Shiki によるシンタックスハイライトが適用されます。

言語を指定しない場合、プレーンテキストとして表示されます。

タイトル

sample.tsx

行番号

行ハイライト

単語のハイライト

差分表示

複数指定

複数の属性を同時に指定できます

hello.tsx

数式

数式を記述することが出来ます。

追加予定

インライン

数式ブロック

引用

引用文 1

脚注

脚注1

区切り線


コメントアウト

フロントマターについて

フロントマターとは、MDXファイルの先頭に記述されるYAML形式のメタデータです。

記事のタイトルや投稿日時などの情報を指定します。

ファイル先頭部の --- で囲まれた例のような形式で記述します。

利用可能なプロパティ

以下がこのサイトで利用可能なプロパティです。

プロパティ必須説明
publishedtruetrue or false記事を公開するかしないかを指定する。 公開しない場合は、執筆モード
iconUnicode Emoji
例: &#x1F389 -> 🎉
記事のアイコンを指定
titletruestring記事のタイトル名を指定
datetrueYYYY-MM-DDTHH:mm:ss+09:00記事の公開日時を指定
lastupdatedYYYY-MM-DDTHH:mm:ss+09:00記事の更新日時を指定
categoriestrueカテゴリのリスト記事のカテゴリを指定
使用可能なカテゴリを確認
tagstrueタグのリスト記事のタグを指定

カテゴリ

使用可能なカテゴリ

  • news : お知らせ
  • events : イベント
  • activities : 活動

コールアウト

コールアウトは、特定の文章を目立たせるためのスタイルです。

追加予定

埋め込み

埋め込みは、外部のコンテンツを記事内に表示するための機能です。 oEmbed に対応したサイトの URL を簡潔に記述することで、自動的に埋め込みが生成されます。

現時点で、YouTube の埋め込み以外は、ユーザーの入力によって読み込みが開始されます。これは、外部リソースの読み込みによる初期表示の遅延を防ぐためです。

YouTube

YouTube の動画・再生リストを埋め込むことが出来ます。

  • https://www.youtube.com/watch?v=**

  • https://www.youtube.com/playlist?list=**

Canva

Canva のデザイン・スライドを埋め込むことが出来ます。

  • https://www.canva.com/design/**

[include.R] ruBridge - 最終発表

https://www.canva.com

CodePen

CodePen のペンを埋め込むことが出来ます。

  • https://codepen.io/pen/

A Simple CodePen Example (feat. HTML, CSS, & JavaScript)

https://codepen.io

Spotify

Spotify のプレイリストを埋め込むことが出来ます。

  • https://open.spotify.com/playlist/

Top 50 - Japan

https://spotify.com

MDX / JSX

MDX とは、Markdown の中に React Component や JSX を埋め込むことが出来る記法です。

本サイトでは、以下のようなカスタムコンポーネントを事前に提供しています。

タブレイアウト

複数のコンテンツをタブ切り替えによって提供するコンポーネントです。

※ UX を低下させる可能性があります。

Counter.tsx

二段レイアウト

二段構えのレイアウトを提供するコンポーネントです。

カスタムコンポーネントの追加

独自のコンポーネントを追加することが出来ます。

現状、事前に動的に記事を JSON に変換する都合上、 MDX ファイル内での import でコンポーネントを読み込むことができません。

実装手順

  1. contents/components 内にコンポーネントファイルを作成

  2. contents/components/index.tsx に コンポーネントを追加

  3. postspages 全域で使用可能になります。

Footnotes

  1. 脚注の文章