リッチテキスト
WYSIWYGエディタで編集可能なリッチテキストフィールドです。ブログ記事の本文など、書式設定が必要なコンテンツに適しています。
基本例
{
"name": "content",
"type": "richtext",
"label": "本文"
} プロパティ
| プロパティ | 型 | 必須 | 説明 |
|---|---|---|---|
name | string | Yes | フィールドの識別子 |
type | "richtext" | Yes | "richtext"を指定 |
label | string | No | CMS上での表示名 |
note | string | No | 編集者向けの補足メモ |
required | boolean | No | 必須フィールドかどうか |
disabledFeatures | string[] | No | 無効化するエディタ機能 |
ai | AiOperation[] | No | AI文章変換の操作一覧 New |
使用例
記事本文
{
"name": "content",
"type": "richtext",
"label": "本文",
"required": true
} 機能制限
{
"name": "summary",
"type": "richtext",
"label": "要約",
"disabledFeatures": ["heading", "image", "codeBlock"]
} 無効化可能な機能
disabledFeatures配列に指定することで、エディタの機能を無効化できます。
見出し
| 値 | 説明 |
|---|---|
heading | すべての見出し |
heading1 | 見出し1(H1) |
heading2 | 見出し2(H2) |
heading3 | 見出し3(H3) |
heading4 | 見出し4(H4) |
heading5 | 見出し5(H5) |
ブロック要素
| 値 | 説明 |
|---|---|
bulletList | 箇条書きリスト |
orderedList | 番号付きリスト |
taskList | タスクリスト |
blockquote | 引用 |
codeBlock | コードブロック |
horizontalRule | 水平線 |
image | 画像 |
インライン要素
| 値 | 説明 |
|---|---|
bold | 太字 |
italic | 斜体 |
underline | 下線 |
strike | 取り消し線 |
code | インラインコード |
highlight | ハイライト |
link | リンク |
AI文章変換機能
{
"name": "content",
"type": "richtext",
"label": "本文",
"ai": [
{ "label": "敬語に変換", "context": "営業先に渡すような丁寧な敬語に変換してください" },
{ "label": "文章を校正", "context": "誤字脱字・文法ミスを修正し、読みやすく校正してください" },
{ "label": "英語に翻訳", "context": "テキストを自然な英語に翻訳してください" }
]
} リッチテキストではツールバー、バブルメニュー、スラッシュコマンド(/ai)の3つの方法でAI操作にアクセスできます。詳しくはAI文章変換を参照してください。
設定例
シンプルなテキストエディタ
見出しや画像を使わせたくない場合:
{
"name": "summary",
"type": "richtext",
"label": "要約",
"disabledFeatures": ["heading", "taskList", "codeBlock", "image", "horizontalRule"]
} 基本的な書式のみ
太字、斜体、リンクのみ許可する場合:
{
"name": "note",
"type": "richtext",
"label": "備考",
"disabledFeatures": [
"heading",
"bulletList",
"orderedList",
"taskList",
"blockquote",
"codeBlock",
"horizontalRule",
"image",
"underline",
"strike",
"code",
"highlight"
]
} コードブロック禁止
技術的でないコンテンツの場合:
{
"name": "content",
"type": "richtext",
"label": "本文",
"disabledFeatures": ["codeBlock", "code"]
} pit.bodyとの関係
pit.bodyで指定されたrichtextフィールドは、マークダウンファイルの本文部分に格納されます。
{
"fields": [
{ "name": "title", "type": "text", "label": "タイトル" },
{ "name": "content", "type": "richtext", "label": "本文" }
],
"pit": {
"title": "title",
"body": "content" // contentフィールドは本文として保存
}
} 出力例(マークダウンファイル):
---
title: '記事タイトル'
---
本文の内容がここに入ります。 pit.bodyを指定しない場合、richtextフィールドはフロントマッターにHTML文字列として格納されます。
JSON形式での保存
extension: "json"のコレクションでは、richtextフィールドはHTML文字列として保存されます。
{
"title": "製品名",
"description": "<p>製品の<strong>詳細な</strong>説明文です。</p>"
}