⑤記事の投稿(MDX)
現在のフォルダ構成
content/
└── posts/
├── welcome.md
└── new-article.md. <– ここに新しく記事を作る
となっていた。mdファイルの状態では記事デザインのCSSを柔軟にカスタマイズできない
MD→MDXへの移行
ChatGPTに尋ねてCursorへの指示文を作成した
MDXへの移行が完了した
新規MDXファイルの作成
IDEに移動して「content/posts/」フォルダ内に新規MDXファイル(新規記事)を作成する
MDX用のCSS
例えば、「記事MDXファイルの中で <ImportantBox> と書いたら、実際のWebページではどういうHTML・CSSで表示するか」
ということを決めるならば、
src/mdx-components.tsx(MDXをHTMLに変換するファイル)
のファイル内に
import type { MDXComponents } from “mdx/types”
function ImportantBox( { children}: { children: React.ReactNode } ) {
return (
<div className=”important-box”>
<div className=”important-content”>
{children}
</div>
</div>
)
}
…
const components: MDXComponents = {
h1: ({ children}) => (
<h1>{children}</h1>
),
ImportantBox, <=== ここ忘れない
}
export function useMDXComponents ( … )
サイト全体のCSS
先ほどのmdx-components.tsxの変更で新しくできたimportant-boxというクラスに対して
src/app/globals.css
でCSSを指定する
ローカルで変更箇所を確認
CursorでTerminalを開き(Control+Shift+へ)、
npm run dev
してhttp://localhost:3000を開く
Vercel(本番環境)の変更反映
npm run build
でビルドエラーがないか確認し、その後で
npx vercel –prod
でVercelに反映させる
※ npm run buildは必須ではない。飛ばしてnpx vercel –prodしてもエラーがなければうまく行く
BACK